Thursday, November 7, 2024

Manufacturing Visibility: Metrics Monitoring and Alerting

Pulling again the curtain

One factor that makes Rockset so magical is the truth that it “simply works”. After years of fastidiously provisioning, managing, and tuning their information techniques, prospects really feel that Rockset’s serverless providing is just too good to be true (we’ve heard this precise phrase from many purchasers!). We satisfaction ourselves on having abstracted away the Rube Goldberg-like complexities inherent in sustaining indexes and ETL pipelines. Offering visibility into this complexity is a vital step to assist our customers get essentially the most out of our product.

As our customers more and more depend on Rockset to energy their purposes, the identical questions come up:

  • How do I do know once I must improve to a bigger Digital Occasion?
  • Can I combine Rockset into my monitoring and alerting toolkit?
  • How can I measure my information and question latencies?

To assist reply these questions, we got down to present our customers every thing they may presumably need to see, avoiding the overly difficult.

We wished to supply a 360 diploma overview for each customers within the extra exploratory, constructing part, in addition to these able to take Rockset into manufacturing. With this in thoughts, we constructed two new options:

  1. Monitoring and metrics straight constructed into the Rockset Console
  2. The means to combine with present third-party monitoring companies


production-visibility-monitoring-diagram-1

Bringing our customers real-time metrics on the well being of their Rockset assets felt like the right alternative for dogfooding, and so dogfood we did. Our new Metrics Dashboard is totally powered by Rockset!

Selecting metrics

At a excessive stage, integrating Rockset into your software consists of:

  1. Selecting a Digital Occasion
  2. Ingesting information into collections
  3. Querying your information

The metrics we offer mirror this stream, and holistically cowl any issues it’s possible you’ll come throughout when constructing with Rockset. They fall into 4 classes:

  1. Digital Occasion

    1. CPU utilization (by leaf / aggregator)
    2. Allotted compute (by leaf / aggregator)
    3. Reminiscence utilization (by leaf / aggregator)
    4. Allotted reminiscence (by leaf / aggregator)
  2. Question

    1. Rely (complete rely, and by Question Lambda)
    2. Latency (latency throughout all queries, and by Question Lambda)
    3. 4XX, and 5XX errors (complete rely)
  3. Ingest

    1. Replication lag (by assortment)
    2. Ingest errors (complete throughout all collections)
    3. Streaming ingest (complete throughout all collections)
    4. Bulk ingest (complete throughout all collections)
  4. Storage

    1. Whole storage dimension (complete throughout all collections, and by assortment)
    2. Whole doc rely (complete throughout all collections, and by assortment)

In selecting what metrics to point out, our baseline purpose was to assist customers reply essentially the most recurring questions, reminiscent of:

  • How can I measure my question latencies? What latencies have my Question Lambda’s been seeing? Have there been any question errors? Why did my question latency spike?

    • Question latencies and errors throughout all queries can be found, in addition to latencies and errors per Question Lambda in Question Lambda particulars.
    • In case your question latency spiked within the final 24 hours, you possibly can drill down by question latency by Question Lambda if relevant.
  • What is the information latency between my exterior supply and my Rockset assortment? Have there been any parse errors?

    • Now you can view replication lag, in addition to ingest parse errors per assortment in assortment particulars.
  • How do I do know once I must improve to a bigger Digital Occasion?

    • For those who see spikes in CPU or reminiscence utilization on your Digital Occasion, it is best to most likely stagger your question load, or improve to a bigger Digital Occasion. Test your question rely / latency for the corresponding timestamp for additional affirmation.

Take a look at the brand new dashboard within the Metrics tab of the Rockset Console!

Integrating with present monitoring companies

When you’ve completed your due diligence and have determined that Rockset is the fitting match on your software wants, you’ll doubtless need to combine Rockset into your present monitoring and alerting workflows.

Each staff has distinctive monitoring and alerting wants, and employs an unlimited array of third-party instruments and frameworks. As a substitute of reinventing the wheel and attempting to construct our personal framework, we wished to construct a mechanism that will allow customers to combine Rockset into any present device in the marketplace.

Metrics Endpoint

We expose metrics information in a Prometheus scraping suitable format, already an open normal, enabling you to combine with lots of the hottest monitoring companies, together with however not restricted to:

  1. Prometheus (and Alertmanager)
  2. Grafana
  3. Graphite
  4. Datadog
  5. AppDynamics
  6. Dynatrace
  7. New Relic
  8. Amazon CloudWatch
  9. …and lots of extra

$ curl https://api.rs2.usw2.rockset.com/v1/orgs/self/metrics -u {API key}:

# HELP rockset_collections Variety of collections.
# TYPE rockset_collections gauge
rockset_collections{virtual_instance_id="30",workspace_name="commons",} 20.0 
rockset_collections{virtual_instance_id="30",workspace_name="myWorkspace",} 2.0 
rockset_collections{virtual_instance_id="30",workspace_name="myOtherWorkspace",} 1.0
# HELP rockset_collection_size_bytes Assortment dimension in bytes. 
# TYPE rockset_collection_size_bytes gauge 
rockset_collection_size_bytes{virtual_instance_id="30",workspace_name="commons",collection_name="_events",} 3.74311622E8 
...

With this endpoint and the instruments it integrates with, you possibly can:

  • Programmatically monitor the state of your Rockset manufacturing metrics
  • Configure motion objects, like alerts based mostly on CPU utilization thresholds
  • Arrange auto remediation by altering Digital Occasion sizes based mostly on manufacturing hundreds

This endpoint is disabled by default, and might be switched on within the Metrics tab (https://console.rockset.com/metrics) within the Rockset Console.


production-visibility-monitoring-diagram-2

At Rockset, Grafana and Prometheus are two of our important monitoring pillars. For the rollout of our visibility efforts, we arrange our inside Prometheus scraper to hit our personal metrics endpoint. From there, we created charts and alerts which we use in tandem with present metrics and alerts to watch the brand new characteristic!

Get began

An in depth breakdown of the metrics we export by way of our new endpoint is on the market in our documentation.

We’ve got a primary Prometheus configuration file and an Alertmanager guidelines template in our group Github repository that can assist you get began.



Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles