netdata / netdata/netdata

apps.plugin: produce system.processes_state on FreeBSD (parity with Linux/macOS)

Open
#23,535 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
80.6k
Forks
6.6k
Avg merge
15h 36m
Merged PRs (30d)
304

Description

Follow-up to PR #23534 / issue #23296.

FreeBSD's apps_os_collect_all_pids_freebsd() also fetches struct kinfo_proc with the same BSD p_stat enum (SIDL/SRUN/SSLEEP/SSTOP/SZOMB) used by the new macOS implementation, but PROCESSES_HAVE_STATE remains 0 there too.

Tracking the same enable + map + count-before-skip pattern that was implemented for macOS in #23534.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing apps_os_collect_all_pids_freebsd() with the macOS implementation from PR #23534, focusing on struct kinfo_proc and its BSD p_stat values. Enable process-state reporting, map the listed states, and preserve the count-before-skip behavior. Done means FreeBSD produces system.processes_state with parity to Linux and macOS.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
observability, operating-systems
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.