Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

admin: Include tokio runtime metrics in the default metrics export #215

Merged
merged 11 commits into from
Dec 11, 2023

Commits on Dec 10, 2023

  1. admin: Include tokio runtime metrics in the default metrics export

    This change adds a new independent crate, kubert-prometheus-tokio, that
    exports Tokio runtime metrics when the `tokio_unstable` compiler feature
    is enabled. When these unstable features are enabled, a set of tokio
    runtime metrics is included in the default metrics export. For example:
    
        # HELP tokio_rt_workers The number of worker threads used by the runtime.
        # TYPE tokio_rt_workers gauge
        tokio_rt_workers 16
        # HELP tokio_rt_park Total number of times worker threads parked.
        # TYPE tokio_rt_park counter
        tokio_rt_park_total 1237
        # HELP tokio_rt_noop Number of times workers unparked but found no new work.
        # TYPE tokio_rt_noop counter
        tokio_rt_noop_total 776
        # HELP tokio_rt_steal Number of tasks stolen by workers from others.
        # TYPE tokio_rt_steal counter
        tokio_rt_steal_total 19
        # HELP tokio_rt_steal_operations Number of times workers stole tasks from other.
        # TYPE tokio_rt_steal_operations counter
        tokio_rt_steal_operations_total 19
        # HELP tokio_rt_remote_schedule Total number of remote schedule operations.
        # TYPE tokio_rt_remote_schedule counter
        tokio_rt_remote_schedule_total 27
        # HELP tokio_rt_local_schedule Total number of local schedule operations.
        # TYPE tokio_rt_local_schedule counter
        tokio_rt_local_schedule_total 546
        # HELP tokio_rt_overflow Total number of overflow operations.
        # TYPE tokio_rt_overflow counter
        tokio_rt_overflow_total 0
        # HELP tokio_rt_polls The number of tasks that have been polled across all worker threads.
        # TYPE tokio_rt_polls counter
        tokio_rt_polls_total 468
        # HELP tokio_rt_busy_seconds Total duration of time when worker threads were busy processing tasks.
        # TYPE tokio_rt_busy_seconds counter
        # UNIT tokio_rt_busy_seconds seconds
        tokio_rt_busy_seconds_total 0.08628424000000004
        # HELP tokio_rt_injection_queue_depth The number of tasks currently scheduled in the runtime's injection queue.
        # TYPE tokio_rt_injection_queue_depth gauge
        tokio_rt_injection_queue_depth 0
        # HELP tokio_rt_local_queue_depth The total number of tasks currently scheduled in workers' local queues.
        # TYPE tokio_rt_local_queue_depth gauge
        tokio_rt_local_queue_depth 0
        # HELP tokio_rt_budget_forced_yield Number of times a worker thread was forced to yield due to budget exhaustion.
        # TYPE tokio_rt_budget_forced_yield counter
        tokio_rt_budget_forced_yield_total 0
        # HELP tokio_rt_io_driver_ready Number of times the IO driver was woken up.
        # TYPE tokio_rt_io_driver_ready counter
        tokio_rt_io_driver_ready_total 80
    
    The kubert-prometheus-tokio crate provides standalone prometheus-client
    integration using the tokio-metrics crate. This is achieved by spawning
    a background task that updates these metrics once per second. The
    polling interval for the default metrics endpoint cannot currently be
    configured.
    olix0r committed Dec 10, 2023
    Configuration menu
    Copy the full SHA
    b373dfd View commit details
    Browse the repository at this point in the history
  2. ci: add a release workflow

    olix0r committed Dec 10, 2023
    Configuration menu
    Copy the full SHA
    79489d4 View commit details
    Browse the repository at this point in the history
  3. ci: add a release workflow

    olix0r committed Dec 10, 2023
    Configuration menu
    Copy the full SHA
    d80e0cf View commit details
    Browse the repository at this point in the history
  4. +unstable

    olix0r committed Dec 10, 2023
    Configuration menu
    Copy the full SHA
    8eec81d View commit details
    Browse the repository at this point in the history
  5. don't commit cargo/config.toml

    olix0r committed Dec 10, 2023
    Configuration menu
    Copy the full SHA
    6665f35 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    15f3eda View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d047a99 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    403d384 View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2023

  1. comment

    olix0r committed Dec 11, 2023
    Configuration menu
    Copy the full SHA
    0973e83 View commit details
    Browse the repository at this point in the history
  2. Add a .cargo/config.yml

    olix0r committed Dec 11, 2023
    Configuration menu
    Copy the full SHA
    dc34a33 View commit details
    Browse the repository at this point in the history
  3. api tweaking

    olix0r committed Dec 11, 2023
    Configuration menu
    Copy the full SHA
    a12bfa9 View commit details
    Browse the repository at this point in the history