Skip to main content

Rust-backed performance metrics and request tracing

Project description

llm-runtime-metrics (Python)

Python bindings for request metrics and Prometheus export.

Install from PyPI as llm-runtime-metrics.

Import in Python as:

import llm_runtime_metrics

The supported package root focuses on the request-metrics workflow.

Add LLM Metrics To An Existing Prometheus Server

from prometheus_client import CollectorRegistry, start_http_server
from llm_runtime_metrics import (
    REQUEST_FEATURE_IMAGE,
    REQUEST_FEATURE_TOOLS,
    RequestMetricsCollector,
    RequestMetricsFactory,
)

# Reuse your existing registry if you already have one.
registry = CollectorRegistry()

factory = RequestMetricsFactory(
    request_log_enabled=False,
    metric_prefix="llm_runtime",
    metrics_window_seconds=60.0,
    metrics_quantiles=[0.5, 0.9, 0.99],
)

# Registers a custom collector that pulls fresh samples from `factory` at scrape time.
RequestMetricsCollector(
    factory,
    base_labels={"service": "text-generation", "engine": "vllm"},
    registry=registry,
)

# If your app already exposes /metrics, wire this into that server instead.
start_http_server(8000, registry=registry)


# Example lifecycle hooks in your inference code:
def on_request_start(prompt_token_ids: list[int]):
    features = REQUEST_FEATURE_TOOLS | REQUEST_FEATURE_IMAGE
    return factory.new_request(prompt_token_ids, features=features)


def on_stream_step(req_metrics, full_output_token_ids: list[int], cached_tokens: int | None):
    # Use `is_diff=False` when passing cumulative token ids.
    req_metrics.record_tokens(full_output_token_ids, cached_tokens=cached_tokens, is_diff=False)


def on_request_success(req_metrics):
    req_metrics.success()


def on_request_cancel(req_metrics):
    req_metrics.cancel()

Available request feature bits:

  • REQUEST_FEATURE_NONE
  • REQUEST_FEATURE_XGRAMMAR
  • REQUEST_FEATURE_TOOLS
  • REQUEST_FEATURE_IMAGE

If you need plain text output instead of a collector, call:

text = factory.prometheus_strfmt({"service": "text-generation", "engine": "vllm"})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llm_runtime_metrics-0.0.8.tar.gz (62.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_ppc64le.whl (8.0 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ppc64le

llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_armv7l.whl (6.4 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARMv7l

llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl (6.5 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ ARM64

llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_i686.whl (7.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_armv7l.whl (6.6 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (8.0 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl (7.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ i686

llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_11_0_arm64.whl (5.8 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_10_12_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

llm_runtime_metrics-0.0.8-cp310-abi3-win_amd64.whl (5.5 MB view details)

Uploaded CPython 3.10+Windows x86-64

llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_i686.whl (7.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_armv7l.whl (6.6 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_aarch64.whl (6.7 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_ppc64le.whl (8.0 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ppc64le

llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_armv7l.whl (6.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARMv7l

llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_aarch64.whl (6.5 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (7.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ i686

llm_runtime_metrics-0.0.8-cp310-abi3-macosx_11_0_arm64.whl (5.8 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

llm_runtime_metrics-0.0.8-cp310-abi3-macosx_10_12_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file llm_runtime_metrics-0.0.8.tar.gz.

File metadata

  • Download URL: llm_runtime_metrics-0.0.8.tar.gz
  • Upload date:
  • Size: 62.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for llm_runtime_metrics-0.0.8.tar.gz
Algorithm Hash digest
SHA256 daf2d71302605953a500cadf02d59893011c989bd46cd2674699f07b3ff351c3
MD5 1426b8be67a90c6ce265df3658f1c5a7
BLAKE2b-256 2f8060219475272178b23e6a84a5736d7faf99a84f866882e0eeddec7442869e

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ab4a786331cacdcb5c5a9a2e2c50d43455fd4960db07a84c0f378b581690a233
MD5 a4345c3cbfd786d84d2744d8541d943f
BLAKE2b-256 d689f57b437218f0c9037bb244bc04adc97a37b9955a928ab926d590c2ea3155

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 83854f5d3dfb9b85067ee2492e4e11fd8bdf3116c0be8455be9389383018e12f
MD5 26577be82e2105a86a1227bab573c1cb
BLAKE2b-256 6608b210a1e8dbd2047c59f8723aea6a78f643d60eb98c40334e844d819aa8a1

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 a5309ebe1247b7948e30f26f14e1fa67a4fbf4fa09414436d8d4b9f7dbe60ac7
MD5 50b118f9721636fbaf11fcd261102af6
BLAKE2b-256 c0d2cf9db98a16442f3df68ee25aaae8cda6da7af3dcd0749340f7ab2883b75e

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 1ea8f9208b6191173b9ed29c967bc23c93b1f5d0825786aa68e484a281aa1909
MD5 d6c32446d2c79ded9c41b9de18423638
BLAKE2b-256 4693c7a50a271d6a2daf986283b8850a9febd0617f5654649914f58a02a1353e

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 939079e56123ea364296b95c928d2cbc69963b5fa7d32b9517dd08886083108b
MD5 417ef4a51b310a4850a9624fb973a275
BLAKE2b-256 dac45e12b87a613f1f56c919be01abefc7e54459f54d97866a22b498ef6b0169

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 30dbb0161f28dbf60ad4c1c816b0e3d6fe6e18729f8772cb83a54aca082c3fd5
MD5 1ca9c69053eb75b74fe7e187f3960849
BLAKE2b-256 b09309066430fe2f0fc6f4ce419d34eb6dc05061a727232f836d6f2f3ab0425b

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1979fc50168b091c19e508d0d60e7b0eee96e3fd70df5bf3fc9996b236a0c1e8
MD5 b6fb543c01250c9864d737c4739ee632
BLAKE2b-256 363298c217257ea6d4a104b207fff1d12e642f9b22ccac2b43745b31df0598f9

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 03e30533eefa60368f1f147a18cfec883a68fb7719904bca27a379aa139c44dd
MD5 59934f89bca95b0e3ff2e65c833aa127
BLAKE2b-256 9e0738c18fa3dfb0da2770463adaea00e3fd91ec1d7c6854ce94771246d875ab

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 93f2d37f7f901909af0c9c56c6106d935f517e0f3f25fb31f55155332db9ca6a
MD5 3ba23618aaa8be893d01ace7e27ba652
BLAKE2b-256 35276c48a613baa17485123033de4f218e8b7e852438ffe644d99f2188ee5ad6

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f724ba5fa7dff3ca7e6414ae120632da8adb59112ac52ea2a21fcad891eb22d
MD5 a4f8045dc39551ec3c6cbfcde1f4a29e
BLAKE2b-256 adecdf6b5d15e2512e49361594ec50d1d3a054a611a743dcd4d1faefdc15c152

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 08272aa2a9bc9ae16168e95d839ed785798fb45b09355a905fea5848283a7929
MD5 950b4d455cbfbc599dd70dd05cb22877
BLAKE2b-256 06e53e58a6e278521a7b96214b28055cf2841ad1e4948733a6ad997e8dfddf02

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1457b4c4060988d141ac6fa414eaa8da4bf879ee5af6e2ead769b6cf0d26290e
MD5 0aab5dd4363d30b453fbe95bc5ec96c3
BLAKE2b-256 2c463856f11a3dec1b7fd70de0252e2de0834fbc9b15e0cc2bcc41923fc65cdd

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a5b1d9a4ef4d57f6441c84c7ae3120faabbd59f0b3ed0cd04f6fa87703258efd
MD5 e8a1447cf767561e3790af23857b6b2e
BLAKE2b-256 c8b707182af7f73d9959fafaadd87f166adeca70ca4c95b0784c11947d242fe4

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 73ab823149ca7ff6b4899382f7fe468d21975b61594399761cb5fcafbd44e55b
MD5 0031cf6f3ce0aa52d6610770c5182128
BLAKE2b-256 58f7e2ab1bf3deceac42bc78b17bfd097da35086046a68e4a77c3e67472f5653

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 3656deabf736f0aa7f62b17cdb9a09ae0b89b330a02f5bea395b670ae15c7a60
MD5 5ea9adb7c2e1ca4a73bb40caab4338d5
BLAKE2b-256 c8e5adf5d5e04186dfa70ee5d07244ff91b64b69ec501473ef1d55a5769ad23d

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 49bbd212408d4c581f36b74b807edecae70f88a716ba4d7d1d9061a4449c56f2
MD5 d84576fcc06e04d1ec822f6cf512c5a4
BLAKE2b-256 e87be8234abcfec077b5a99b716bbe17cbd15ec22e0f2dd09c0eed8e9d68b7c6

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 efc8146eeeebeb56f8b312f573003342ff789ffc5369d97dd9bada5831989b8f
MD5 879791ef4a08c259b7de23f975197658
BLAKE2b-256 2b878220dc36de192b7f929e95e971925ad07eecaed9bc09b1a43dbaaac64572

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 b9ac3de2314967271a56e76202e16d9b2174e68f3844f9e5a2bd60aca9e2c020
MD5 55d17047f7dd010e34a431ee04e8d94d
BLAKE2b-256 04fb91f0fe5c9aa4aac373ee59cb340d9678d8f023c2063cb9967f8e4fb069ed

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 18e78cb644bcbeabd3f4df2d3c822b3e80dad96180534e00f88f430503116b31
MD5 efda9122397a421d9078c42d8e7825e7
BLAKE2b-256 30c75971496f213c335ae2d5a040d90393cfdafcdfba745cf47021779b45f190

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 62b004a4c28d6e388d16ab2e795d4d52c5634bdc13ff0bf528aae59ef1f98975
MD5 9ed20ad87c299c73c5c4899e7a827402
BLAKE2b-256 53051ed324a108bcb4d895bffd7278477da4c867fdd1d299507c3b27f7a6eb68

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 ebd13195a9af99b1eb45710619df1dcba9004288881d9a9827e2657132eab42b
MD5 00cfc7073bfd46e24dce3915fb4639b7
BLAKE2b-256 abf06117daee0753f862201d665e2b6608c90cfc4994db38a1f96d06eedbe3fa

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d05d3f78b4227a7285dcd6a1f5bed8928926add1e3a03de7d835f5185aff51e2
MD5 0a4629f776dc4053de3f28c96c886ee0
BLAKE2b-256 3e8d7755414ff5b3d652e7b02505fe0d1a07d80319834d40b86c4a5c3e38e19b

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cfebff96080a505d2502c071328cc3b274df27188737d4710a8e2ff5323670ff
MD5 439e322fe23fac93a0c705b596965d2e
BLAKE2b-256 3772b701b97e56d872213887f50abdab7ca035b6b0971c8eb15248b9478fc27c

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 36ca8fde42746875a1e8eecf5241fce86c85fb2fe3d2a62b07deaa8d0ff0d727
MD5 af0a21f33bfedbd62280cd162063ca4a
BLAKE2b-256 28e8d31b7460d41f1a9265d3df7be34f722c8b99ced4b0d5dff67c1d732680db

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d62bfc16c1c045b5b529ce1d7ce6506aafb9505afd2a023cd1970f8a1110ad2
MD5 7a02befabf6b34c04afd2629232a2dbb
BLAKE2b-256 09d6ac9792b6a4e44f2af7d69bb4221df24d73dfcd09ef1303db87e59c2a5896

See more details on using hashes here.

File details

Details for the file llm_runtime_metrics-0.0.8-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for llm_runtime_metrics-0.0.8-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 015259abd3ffe30a3a64323e7d92c195e351d17738d6a8aee3e41cd52932e7de
MD5 c5e6782978a98df0bd2366feabe346fe
BLAKE2b-256 87bef624f889c862e85624d77e018cb6f015fc66f4013ec71eb68344d1c5a4a3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page