Monitor SLO detector service latency for a group of customers 🔗
Kai, a site reliability engineer at the fictitious Buttercup Games, wants to monitor a latency issue affecting a critical checkout workflow for the service
cartservice and endpoint
/getcart for a specific set of customers who most frequently have problems with it. By generating a Monitoring MetricSet with
customer.id as a custom dimension and filtering it to the customers affected by the issue, Kai can set up a detector to monitor service and endpoint latency specifically by customer. They can also create charts and dashboards that show service and endpoint latency for specific customers over time.
Generate a Monitoring MetricSet and filter by span tag 🔗
To generate Monitoring MetricSets by customer:
Kai indexes a span tag to identify each customer: customer.id. See Index span tags to generate Troubleshooting MetricSets for the steps they take to generate a custom MMS.
Kai generates a Monitoring MetricSet using customer.id as a dimension. See Generate a Monitoring MetricSet with a custom dimension for the steps they take to generate a custom MMS.
Then, Kai sets the scope of the Monitoring MetricSet to cartservice, and filters on the tag values for customer.id that represent the specific list of customers Kai wants to investigate.
This image shows a sample Monitoring MetricSet configuration with service selected as cartservice, endpoint as /getcart and filtering by tag values for customer.id:
Create service latency detectors to track metrics 🔗
Kai can leverage the custom dimensionalized Monitoring MetricSet they just created to monitor the performance of this critical checkout workflow in
cartservice. To do this, they create a detector using the same custom indexed tag,
customer.id, to track error rates associated with the checkout workflow.
- There are two ways for Kai to navigate to the Detector Creation page to create a detector using their custom Monitoring MetricSet:
From the left navigation panel, select: Alerts & Detectors > New Detector.
From any APM page, click the plus sign on the top bar and select Detector from the drop down.
Kai follows the guided Detector Creation flow to create their detector based on the error rate in cartservice:GetCart, filtered to the custom dimension of customer.id.
They use the Metric Finder to find additional information on the metrics and metadata for their system. For more, see Metric Finder and Metadata Catalog.
The following image shows how to filter the MetricFinder for metrics related to custom monitoring MetricSets.
Set up charts, dashboards, and alerts for custom dimensions 🔗
Kai can also create charts and dashboards that leverage the custom dimensions they created.
They navigate to the built-in APM service endpoint dashboard for cartservice:GetCart using the following steps:
From the APM landing page, click the Dashboards icon in the left navigation bar.
Search APM in the search bar.
Under APM Services in the Built-in Dashboard Groups section, click Service Endpoint.
Select the relevant environment, then select
cartserviceas the Service,
GetCartas the Endpoint, and apply sf_dimensionalized:true as a Filter.
To see the custom dimensions they created in their custom MMS, Kai applies the filter sf_dimensionalized:true in the filter bar while creating their dashboard, as the following image illustrates:
Use the links in the following table to learn more about how to set up charts, dashboards, and alerts.
Create an alert
Monitor services in APM dashboards
Kai created a Monitoring MetricSet with a custom dimension to track a checkout workflow for a subset of customers. To learn more about Monitoring MetricSets, see Generate a Monitoring MetricSet with a custom dimension.