HTTP endpoints ============== A subset of the following pages will be available from the scheduler or workers of a running cluster. The list of currently available endpoints can be found by examining ``/sitemap.json``. Main dashboard links -------------------- Dynamic bokeh pages. The root redirects to /status, and each page links to the others via a header navbar. - ``/status``: entry point to the dashboards, shows cluster-wide memory and tasks - ``/workers``: currently connected workers and their CPU/memory usage - ``/tasks``: task block view with longer look-back than on /status - ``/system``: global stats for the cluster, CPU, memory, bandwidth, file descriptors - ``/profile``: flamegraph statistical profiling across the cluster - ``/graph``: currently processing graphs in a dependency tree view - ``/groups``: graph layout for task groups (dependencies, memory, output type, progress, tasks status) - ``/info``: redirect to ``/info/main/workers.html`` - ``/hardware``: gathers bandwidth information on memory, disk, and network Scheduler HTTP -------------- Pages and JSON endpoints served by the scheduler - ``/health``: check server is alive - ``/info/main/workers.html`` basic info about workers and links to their dashboards and logs - ``info/worker/(worker).html``: more detail about given worker, keyed by TCP address; links to tasks - ``info/task/(task).html``: details about a task on the cluster, by dask key; links to worker, related tasks, and client - ``/info/call-stacks/(worker).html``: tasks currently handled by given worker - ``/info/call-stack/(task).html``: state of task (where it is running) - ``/info/main/logs.html``: scheduler logs - ``/info/logs/(worker).html``: logs of given worker - ``/individual-plots.json``: map of path to description for available individual (i.e,. one-pane, non-dashboard) plots - ``/eventstream``: scheduler events on a websocket - ``/proxy/(port)/(address)/(path)``: proxy to worker HTTP locations (if you have jupyter-server-proxy) - ``/metrics``: prometheus endpoint - ``/json/counts.json``: cluster count stats - ``/json/identity.json``: scheduler information - ``/json/index.html``: link to the above two endpoints - ``/sitemap.json``: list of available endpoints - ``/statics/()``: static file content (CSS, etc) - ``/stealing``: worker occupancy metrics, to evaluate task stealing Scheduler API ------------- Scheduler methods exposed by the API with an example of the request body they take - ``/api/v1/retire_workers`` : retire certain workers on the scheduler .. code-block:: json { "workers":["tcp://127.0.0.1:53741", "tcp://127.0.0.1:53669"] } - ``/api/v1/get_workers`` : get all workers on the scheduler - ``/api/v1/adaptive_target`` : get the target number of workers based on the scheduler's load Individual bokeh plots ---------------------- - ``/individual-task-stream`` - ``/individual-progress`` - ``/individual-graph`` - ``/individual-groups`` - ``/individual-profile`` - ``/individual-profile-server`` - ``/individual-workers-memory`` - ``/individual-cluster-memory`` - ``/individual-cpu`` - ``/individual-nprocessing`` - ``/individual-occupancy`` - ``/individual-workers`` - ``/individual-exceptions`` - ``/individual-bandwidth-types`` - ``/individual-bandwidth-workers`` - ``/individual-workers-network`` - ``/individual-workers-disk`` - ``/individual-workers-network-timeseries`` - ``/individual-workers-cpu-timeseries`` - ``/individual-workers-memory-timeseries`` - ``/individual-workers-disk-timeseries`` - ``/individual-memory-by-key`` - ``/individual-compute-time-per-key`` - ``/individual-aggregate-time-per-action`` - ``/individual-scheduler-system`` - ``/individual-gpu-memory`` (GPU only) - ``/individual-gpu-utilization`` (GPU only) Worker HTTP ----------- - ``/status``: - ``/counters``: - ``/sitemap.json``: list of available endpoints - ``/system``: - ``/health``: check server is alive - ``/metrics``: prometheus endpoint - ``/statics/()``: static file content (CSS, etc)