Skip to main content

scripts.d Scheduler

Plugin: scripts.d.plugin Module: scheduler

Overview

The scheduler module manages the execution of jobs defined by the nagios and zabbix modules.

It provides:

  • Worker pool: Concurrent execution with configurable worker count and queue depth.
  • OTLP logging: Optional structured log export via gRPC for job execution results.

Scheduler-level metrics (jobs status, throughput, next run time) are exposed through the nagios and zabbix modules that use it.

The scheduler manages per-job timers and dispatches jobs to a worker pool. Each worker executes a job via the configured runner (nagios or zabbix) and reports results back.

This collector is supported on all platforms.

This collector supports collecting metrics from multiple instances of this integration, including remote instances.

scripts.d Scheduler can be monitored further using the following other integrations:

Default Behavior

Auto-Detection

A default scheduler is created automatically. Additional named schedulers can be defined in the configuration.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Metrics

Scheduler metrics are exposed through the nagios and zabbix modules under the nagios.scheduler.* context.

Alerts

There are no alerts configured by default for this integration.

Setup

Prerequisites

No action required.

Configuration

Options

Scheduler configuration controls the worker pool and optional OTLP logging.

Config options
GroupOptionDescriptionDefaultRequired
GeneralworkersNumber of concurrent workers executing jobs.50no
queue_sizeCapacity of the internal work queue.128no
Logginglogging.enabledEnable structured OTLP log export for job results.trueno
logging.otlp.endpointgRPC endpoint for OTLP log export.127.0.0.1:4317no

via File

The configuration file name for this integration is scripts.d/scheduler.conf.

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config scripts.d/scheduler.conf
Examples
Custom scheduler

Define a scheduler with a larger worker pool.

Config
jobs:
- name: heavy
workers: 100
queue_size: 256


Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.