Applications
In addition to providing cluster-level observability and management operations, Conductor allows you to drill into individual Dapr-enabled applications running within a cluster to gain deeper visibility into application health and performance.
An application in Conductor represents a Kubernetes pod (or set of pods) with the Dapr sidecar injected.
Application insights
Each Dapr-enabled application within a cluster can be monitored using the App summary
dashboard which provides granular details about the application including:
- Pod and container health
- Critical logs issues, critical metrics issues and high-impact advisories
- Resource usage metrics
- Dapr API usage and latency
Pod and container health
To assure operators an application is up-and-running as expected on the cluster, traditional Kubernetes pod lifecycle data is presented in the App Summary
view including:
- Pod Status:
Healthy
if both the app and the Dapr sidecar container health checks pass successfully - Container restarts (Dapr sidecar or Application): How many times a container withiin the pod has been restarted
- Pod Uptime: How long the current pod has been running successfully since the last restart
To dive deeper into pod and container data for the application, navigate to the Pods
tab, which will provide more detailed information regarding all pod replicas currently running in the cluster.
The app summary also provides helpful Dapr sidecar insights such as the sidecar Dapr version, the number of active Dapr components (used in last 10 minutes), and the Kubernetes deployment annotations used for Dapr configuration purposes.
Critical issues and high-impact advisories (Insights)
Within the application summary, Insights
serves as an aggregated indicator of any critical app metrics or logs notifications thrown in the past hour along with the presence any application-specific high impact advisories.
These insights are linked directly to the source notifications in the Conductor events view so operators can easily uncover the current issues impacting the application.
For example, here you can see an application view which shows one critical metrics issue has been fired in the past hour:
Upon selecting the metrics issue, futher details related to the metrics issue can be viewed:
Resource usage metrics
Resource management
If an application has resource requests and limits set, Conductor provides a visualization to display the average CPU and memory usage of a pod replica relative to the application requests and limits defined in Kubernetes.
Usage Metrics
To dive deeper into pod CPU and memory usage by container, including the application container and Dapr sidecar, use the Conductor Usages
graphs. These graphs support visualizing CPU and memory for a timespan of up to seven days.
Dapr API usage and latency (throughputs)
Conductor provides critical data on how Dapr and an application workload are interacting over gRPC and HTTP to enable operators to monitor Dapr API throughputs.
Dapr API interaction data is shown for requests to the sidecar from the application container (App -> Dapr
), as well as outgoing-requests which are requests from the sidecar container to the application (Dapr -> App
).
The following Throughputs
graphs are provided:
- HTTP and gRPC Requests Per Second
- HTTP and gRPC Request Error Rate
- HTTP and gRPC Latency- 95th percentile (Enterprise-only)
Application visualization
The application graph presented at the cluster-level is also available in the context of a single application in Isolated
state. The graph provides a visual representation of the application's interactions with components and other applications in the cluster.
Hovering over the connectivity lines shows call metrics and selecting lines shows the direction of the request flow between two entities. A connectivity line will also appear red in the case of metrics issues.
Additionally, from the application view, isolating on a component is supported to provide context on how the component is being used across the cluster.
Scoped resource insights
Dapr resources which include the application in the scopes
section are shown at the application level to provide an easy view of all relevant and connected resources.
Components
All components which are scoped to an application can be viewed with more context by navigating to a specific application and selecting the components
tab. For each component, there is an active status which indicates if the component has been used by the application at any point in the past five minutes.
There are also graphs to provide more insights into Components metrics over time related to requests per second, error rates, and latency (Enterprise-only).
Subscriptions
All Dapr subscription resources accessible to the application via scopes
can be listed and viewed by navigating to the Subscriptions
tab in the console.
Actors
All actor instances scoped to the selected application are shown on the Actors
tab along with the same actor metrics graphs shown as the cluster level
Resiliency policies
In addition to seeing the list of resiliency policies which include the selected app in the scopes
section, you can also view metrics at the application level indicating the rate at which the invoke count of the policy is changing over time.