Application perspectives enable you to tailor your view of an application and to capture the type of semantics and information you need to optimize the applications and services you are responsible for. An application perspective represents a set of services and endpoints that are defined by a shared context and is declared using tags.
For example, you can capture multi-tenants (
tenant:two) as applications or different environments (
k8s.env:dev) as applications. An eCommerce site may want to capture their stores (
zone:eu) as two separate applications, or group a set of services that work together into an application.
An application perspective can overlay entire services, or just a subset of calls to those services. Application perspectives can completely overlap each other, partially overlap, or may not overlap at all. Services and endpoints can be included within the definition of more than one application, or none at all.
A team that runs a multi-tenant offering likely wants to capture their tenants (
tenant:two) as applications. Another team that runs an eCommerce site may want to capture their US (
zone:us) and German (
zone:eu) stores as two separate applications. While another team will want to capture their different environments (
k8s.env:dev) as applications. And finally one customer may want to group a set of services that work together functionally into an application. Each of these applications come with their own semantics and varying use cases.