datadog-agent

module
v0.0.0-...-3e0bdff Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2024 License: Apache-2.0

README

Datadog Agent

CircleCI Windows unit tests Coverage status GoDoc Go Report Card

The present repository contains the source code of the Datadog Agent version 7 and version 6. Please refer to the Agent user documentation for information about differences between Agent v5, Agent v6 and Agent v7. Additionally, we provide a list of prepackaged binaries for an easy install process here

Note: the source code of Datadog Agent v5 is located in the dd-agent repository.

Documentation

The general documentation of the project, including instructions for installation and development, is located under the docs directory of the present repo.

Getting started

To build the Agent you need:

  • Go 1.23 or later. You'll also need to set your $GOPATH and have $GOPATH/bin in your path.
  • Python 3.11+ along with development libraries for tooling. You will also need Python 2.7 if you are building the Agent with Python 2 support.
  • Python dependencies. You may install these with pip install -r requirements.txt This will also pull in Invoke if not yet installed.
  • CMake version 3.12 or later and a C++ compiler

Note: you may want to use a python virtual environment to avoid polluting your system-wide python environment with the agent build/dev dependencies. You can create a virtual environment using virtualenv and then use the invoke agent.build parameters --python-home-3=<venv_path> to use the virtual environment's interpreter and libraries. By default, this environment is only used for dev dependencies listed in requirements.txt.

Note: You may have previously installed invoke via brew on MacOS, or pip in any other platform. We recommend you use the version pinned in the requirements file for a smooth development/build experience.

Note: You can enable auto completion for invoke tasks. Use the command below to add the appropriate line to your .zshrc file. echo "source <(inv --print-completion-script zsh)" >> ~/.zshrc

Builds and tests are orchestrated with invoke, type invoke --list on a shell to see the available tasks.

To start working on the Agent, you can build the main branch:

  1. Checkout the repo: git clone https://github.com/DataDog/datadog-agent.git $GOPATH/src/github.com/DataDog/datadog-agent.

  2. cd into the project folder: cd $GOPATH/src/github.com/DataDog/datadog-agent.

  3. Install go tools: invoke install-tools (if you have a timeout error, you might need to prepend the GOPROXY=https://proxy.golang.org,https://goproxy.io,direct env var to the command).

  4. Create a development datadog.yaml configuration file in dev/dist/datadog.yaml, containing a valid API key: api_key: <API_KEY>. You can either start with an empty one or use the full one generated by the Agent build from Step 5 (located in cmd/agent/dist/datadog.yaml after the build finishes).

  5. Build the agent with invoke agent.build --build-exclude=systemd.

    You can specify a custom Python location for the agent (useful when using virtualenvs):

    invoke agent.build \
      --python-home-3=$GOPATH/src/github.com/DataDog/datadog-agent/venv3
    

    Running invoke agent.build:

    • Discards any changes done in bin/agent/dist.
    • Builds the Agent and writes the binary to bin/agent/agent.
    • Copies files from dev/dist to bin/agent/dist. See https://github.com/DataDog/datadog-agent/blob/main/dev/dist/README.md for more information.

    If you built an older version of the agent, you may have the error make: *** No targets specified and no makefile found. Stop.. To solve the issue, you should remove CMakeCache.txt from rtloader folder with rm rtloader/CMakeCache.txt.

    Please note that the trace agent needs to be built and run separately.

Please refer to the Agent Developer Guide for more details. For instructions on setting up a windows dev environment, refer to Windows Dev Env.

Testing

Run unit tests using invoke test.

invoke test --targets=./pkg/aggregator

You can also use invoke linter.go to run just the go linters.

invoke linter.go

When testing code that depends on rtloader, build and install it first.

invoke rtloader.make && invoke rtloader.install
invoke test --targets=./pkg/collector/python

Run

You can run the agent with:

./bin/agent/agent run -c bin/agent/dist/datadog.yaml

The file bin/agent/dist/datadog.yaml is copied from dev/dist/datadog.yaml by invoke agent.build and must contain a valid api key.

Run a JMX check

In order to run a JMX based check locally, you must have:

  1. A copy of a JMXFetch jar copied to dev/dist/jmx/jmxfetch.jar
  2. java available on your $PATH

For detailed instructions, see JMX checks

Contributing code

You'll find information and help on how to contribute code to this project under the docs/dev directory of the present repo.

License

The Datadog agent user space components are licensed under the Apache License, Version 2.0. The BPF code is licensed under the General Public License, Version 2.0.

Directories

Path Synopsis
cmd
agent
The Datadog Agent faithfully collects events and metrics and brings them to Datadog on your behalf.
The Datadog Agent faithfully collects events and metrics and brings them to Datadog on your behalf.
agent/command
Package command implements the top-level `agent` binary, including its subcommands.
Package command implements the top-level `agent` binary, including its subcommands.
agent/common
Package common provides a set of common symbols needed by different packages, to avoid circular dependencies.
Package common provides a set of common symbols needed by different packages, to avoid circular dependencies.
agent/common/misconfig
Package misconfig implements misconfiguration related types and functions
Package misconfig implements misconfiguration related types and functions
agent/common/signals
Package signals defines global agent signal channels
Package signals defines global agent signal channels
agent/subcommands
Package subcommands defines the agent subcommands.
Package subcommands defines the agent subcommands.
agent/subcommands/analyzelogs
Package analyzelogs implements 'agent analyze-logs'.
Package analyzelogs implements 'agent analyze-logs'.
agent/subcommands/check
Package check implements 'agent check'.
Package check implements 'agent check'.
agent/subcommands/config
Package config implements 'agent config'.
Package config implements 'agent config'.
agent/subcommands/configcheck
Package configcheck implements 'agent configcheck'.
Package configcheck implements 'agent configcheck'.
agent/subcommands/controlsvc
Package controlsvc implements 'agent start-service', 'agent stopservice', and 'agent restart-service'.
Package controlsvc implements 'agent start-service', 'agent stopservice', and 'agent restart-service'.
agent/subcommands/diagnose
Package diagnose implements 'agent diagnose'.
Package diagnose implements 'agent diagnose'.
agent/subcommands/dogstatsd
Package dogstatsd contains "agent dogstatsd" subcommands
Package dogstatsd contains "agent dogstatsd" subcommands
agent/subcommands/dogstatsdcapture
Package dogstatsdcapture implements 'agent dogstasd-capture'.
Package dogstatsdcapture implements 'agent dogstasd-capture'.
agent/subcommands/dogstatsdreplay
Package dogstatsdreplay implements 'agent dogstatsd-replay'.
Package dogstatsdreplay implements 'agent dogstatsd-replay'.
agent/subcommands/dogstatsdstats
Package dogstatsdstats implements 'agent dogstatsd-stats'.
Package dogstatsdstats implements 'agent dogstatsd-stats'.
agent/subcommands/flare
Package flare implements 'agent flare'.
Package flare implements 'agent flare'.
agent/subcommands/health
Package health implements 'agent health'.
Package health implements 'agent health'.
agent/subcommands/hostname
Package hostname implements 'agent hostname'.
Package hostname implements 'agent hostname'.
agent/subcommands/import
Package cmdimport implements 'agent import'.
Package cmdimport implements 'agent import'.
agent/subcommands/integrations
Package integrations implements 'agent integration'.
Package integrations implements 'agent integration'.
agent/subcommands/jmx
Package jmx implements 'agent jmx'.
Package jmx implements 'agent jmx'.
agent/subcommands/launchgui
Package launchgui implements 'agent launch-gui'.
Package launchgui implements 'agent launch-gui'.
agent/subcommands/processchecks
Package processchecks implements 'agent processchecks'.
Package processchecks implements 'agent processchecks'.
agent/subcommands/remoteconfig
Package remoteconfig implements 'agent remote-config'.
Package remoteconfig implements 'agent remote-config'.
agent/subcommands/run
Package run implements 'agent run' (and deprecated 'agent start').
Package run implements 'agent run' (and deprecated 'agent start').
agent/subcommands/run/internal/clcrunnerapi
Package clcrunnerapi implements the clc runner IPC api.
Package clcrunnerapi implements the clc runner IPC api.
agent/subcommands/run/internal/clcrunnerapi/v1
Package v1 implements the api endpoints for the `/api/v1` prefix.
Package v1 implements the api endpoints for the `/api/v1` prefix.
agent/subcommands/run/internal/settings
Package settings contains the runtime settings for the agent
Package settings contains the runtime settings for the agent
agent/subcommands/secret
Package secret implements 'agent secret'.
Package secret implements 'agent secret'.
agent/subcommands/secrethelper
Package secrethelper implements 'agent secret-helper'
Package secrethelper implements 'agent secret-helper'
agent/subcommands/snmp
Package snmp implements the 'agent snmp' subcommand.
Package snmp implements the 'agent snmp' subcommand.
agent/subcommands/status
Package status implements 'agent status'.
Package status implements 'agent status'.
agent/subcommands/stop
Package stop implements 'agent stop'.
Package stop implements 'agent stop'.
agent/subcommands/streamep
Package streamep implements 'agent stream-event-platform'.
Package streamep implements 'agent stream-event-platform'.
agent/subcommands/streamlogs
Package streamlogs implements 'agent stream-logs'.
Package streamlogs implements 'agent stream-logs'.
agent/subcommands/taggerlist
Package taggerlist implements 'agent tagger-list'.
Package taggerlist implements 'agent tagger-list'.
agent/subcommands/version
Package version implements 'agent version'.
Package version implements 'agent version'.
agent/subcommands/workloadlist
Package workloadlist implements 'agent workload-list'.
Package workloadlist implements 'agent workload-list'.
agent/windows/controlsvc
Package controlsvc contains shared code for controlling the Windows agent service.
Package controlsvc contains shared code for controlling the Windows agent service.
agent/windows/service
Package service implements the Windows Service for the core agent
Package service implements the Windows Service for the core agent
cluster-agent/api
Package api implements the agent IPC api.
Package api implements the agent IPC api.
cluster-agent/api/agent
Package agent implements the api endpoints for the `/agent` prefix.
Package agent implements the api endpoints for the `/agent` prefix.
cluster-agent/api/v1
Package v1 implements the v1 of the API that exposes methods to manage and get information about the cluster checks and the endpoint checks dispatched by the cluster-agent.
Package v1 implements the v1 of the API that exposes methods to manage and get information about the cluster checks and the endpoint checks dispatched by the cluster-agent.
cluster-agent/api/v1/languagedetection
Package languagedetection implements the language detection API handler.
Package languagedetection implements the language detection API handler.
cws-instrumentation
Package main is the main package of CWS injector
Package main is the main package of CWS injector
cws-instrumentation/command
Package command holds the main command factory for CWS injector
Package command holds the main command factory for CWS injector
cws-instrumentation/flags
Package flags holds default flags for the CWS injector
Package flags holds default flags for the CWS injector
cws-instrumentation/subcommands
Package subcommands is used to list the subcommands of CWS injector
Package subcommands is used to list the subcommands of CWS injector
cws-instrumentation/subcommands/healthcmd
Package healthcmd holds the health command of CWS injector
Package healthcmd holds the health command of CWS injector
cws-instrumentation/subcommands/injectcmd
Package injectcmd holds the inject command of CWS injector
Package injectcmd holds the inject command of CWS injector
cws-instrumentation/subcommands/selftestscmd
Package selftestscmd holds the selftests command of CWS injector
Package selftestscmd holds the selftests command of CWS injector
cws-instrumentation/subcommands/setupcmd
Package setupcmd holds the setup command of CWS injector
Package setupcmd holds the setup command of CWS injector
cws-instrumentation/subcommands/tracecmd
Package tracecmd holds the start command of CWS injector
Package tracecmd holds the start command of CWS injector
installer
Package main implements 'installer'.
Package main implements 'installer'.
installer-downloader
Package main implements the installer downloader
Package main implements the installer downloader
installer/command
Package command implements the top-level `installer` binary, including its subcommands.
Package command implements the top-level `installer` binary, including its subcommands.
installer/subcommands
Package subcommands contains the installer subcommands
Package subcommands contains the installer subcommands
installer/subcommands/daemon
Package daemon provides the installer daemon commands.
Package daemon provides the installer daemon commands.
installer/subcommands/installer
Package installer contains the installer subcommands
Package installer contains the installer subcommands
installer/user
Package user provides helpers to change the user of the process.
Package user provides helpers to change the user of the process.
internal/runcmd
Package runcmd provides support for running Cobra commands in main functions.
Package runcmd provides support for running Cobra commands in main functions.
iot-agent
Package main is the entrypoint for the IoT Agent.
Package main is the entrypoint for the IoT Agent.
otel-agent/config
Package config provides a way to convert the OpenTelemetry Collector configuration to the Datadog Agent configuration.
Package config provides a way to convert the OpenTelemetry Collector configuration to the Datadog Agent configuration.
otel-agent/subcommands
Package subcommands contains the subcommands of the otel-agent.
Package subcommands contains the subcommands of the otel-agent.
otel-agent/subcommands/run
Package run : This package is used to run the application
Package run : This package is used to run the application
process-agent/command
Package command implements the top-level `process-agent` binary, including its subcommands.
Package command implements the top-level `process-agent` binary, including its subcommands.
secrethelper
Package secrethelper implements the secrethelper subcommand.
Package secrethelper implements the secrethelper subcommand.
secrethelper/providers
Package providers defines default secrets providers
Package providers defines default secrets providers
security-agent
Package main implements main
Package main implements main
security-agent/api
Package api implements the agent IPC api.
Package api implements the agent IPC api.
security-agent/api/agent
Package agent implements the api endpoints for the `/agent` prefix.
Package agent implements the api endpoints for the `/agent` prefix.
security-agent/command
Package command holds command related files
Package command holds command related files
security-agent/config
Package config implements config
Package config implements config
security-agent/subcommands
Package subcommands implement security agent subcommands
Package subcommands implement security agent subcommands
security-agent/subcommands/check
Package check holds check related files
Package check holds check related files
security-agent/subcommands/compliance
Package compliance implements compliance related subcommands
Package compliance implements compliance related subcommands
security-agent/subcommands/config
Package config holds config related files
Package config holds config related files
security-agent/subcommands/flare
Package flare implements flare related subcommands
Package flare implements flare related subcommands
security-agent/subcommands/runtime
Package runtime holds runtime related files
Package runtime holds runtime related files
security-agent/subcommands/start
Package start implements start related subcommands
Package start implements start related subcommands
security-agent/subcommands/status
Package status implements status related subcommands
Package status implements status related subcommands
security-agent/subcommands/version
Package version holds version related files
Package version holds version related files
nolint
serverless-init/log
Package log is responsible for settings around logging output from customer functions to be sent to Datadog (logs monitoring product).
Package log is responsible for settings around logging output from customer functions to be sent to Datadog (logs monitoring product).
system-probe
Package main is the entrypoint for system-probe process
Package main is the entrypoint for system-probe process
system-probe/api
Package api contains the API exposed by system-probe
Package api contains the API exposed by system-probe
system-probe/api/client
Package client contains the client for the API exposed by system-probe
Package client contains the client for the API exposed by system-probe
system-probe/api/debug
Package debug contains handlers for debug information global to all of system-probe
Package debug contains handlers for debug information global to all of system-probe
system-probe/api/module
Package module is the scaffolding for a system-probe module and the loader used upon start
Package module is the scaffolding for a system-probe module and the loader used upon start
system-probe/api/server
Package server contains system-probe API server functionality
Package server contains system-probe API server functionality
system-probe/command
Package command contains utilities for creating system-probe commands
Package command contains utilities for creating system-probe commands
system-probe/common
Package common is global variables for the system-probe process
Package common is global variables for the system-probe process
system-probe/config
Package config contains the general configuration for system-probe
Package config contains the general configuration for system-probe
system-probe/config/types
Package types contains the different types used by the system-probe config.
Package types contains the different types used by the system-probe config.
system-probe/modules
Package modules is all the module definitions for system-probe
Package modules is all the module definitions for system-probe
system-probe/subcommands
Package subcommands contains the subcommands for system-probe
Package subcommands contains the subcommands for system-probe
system-probe/subcommands/config
Package config implements 'system-probe config'.
Package config implements 'system-probe config'.
system-probe/subcommands/debug
Package debug is the debug system-probe subcommand
Package debug is the debug system-probe subcommand
system-probe/subcommands/modrestart
Package modrestart is the module-restart system-probe subcommand
Package modrestart is the module-restart system-probe subcommand
system-probe/subcommands/run
Package run is the run system-probe subcommand
Package run is the run system-probe subcommand
system-probe/subcommands/runtime
Package runtime holds runtime related files
Package runtime holds runtime related files
system-probe/subcommands/version
Package version implements 'agent version'.
Package version implements 'agent version'.
system-probe/utils
Package utils are utilities for system-probe
Package utils are utilities for system-probe
systray
Package main for ddtray
Package main for ddtray
systray/command
Package command implements the top-level `systray` binary, including its subcommands.
Package command implements the top-level `systray` binary, including its subcommands.
trace-agent
Package main implements the entrypoint of the `trace-agent` binary.
Package main implements the entrypoint of the `trace-agent` binary.
trace-agent/command
Package command implements the top-level `trace-agent` binary, including its subcommands.
Package command implements the top-level `trace-agent` binary, including its subcommands.
trace-agent/config/remote
Package remote implements the HTTP handler for remote configs
Package remote implements the HTTP handler for remote configs
trace-agent/internal/flags
Package flags contains flags that are only available on Windows.
Package flags contains flags that are only available on Windows.
trace-agent/subcommands
Package subcommands contains the subcommands of the trace-agent.
Package subcommands contains the subcommands of the trace-agent.
trace-agent/subcommands/config
Package config implements 'trace-agent config' cli.
Package config implements 'trace-agent config' cli.
trace-agent/subcommands/controlsvc
Package controlsvc implements 'trace-agent start-service', 'trace-agent stopservice', and 'trace-agent restart-service'.
Package controlsvc implements 'trace-agent start-service', 'trace-agent stopservice', and 'trace-agent restart-service'.
trace-agent/subcommands/info
Package info contains the 'info' subcommand for the 'trace-agent' command.
Package info contains the 'info' subcommand for the 'trace-agent' command.
trace-agent/subcommands/run
Package run implements the run subcommand for the 'trace-agent' command.
Package run implements the run subcommand for the 'trace-agent' command.
trace-agent/test
Package test provides utilities for running integration tests on the trace agent.
Package test provides utilities for running integration tests on the trace agent.
trace-agent/windows/controlsvc
Package controlsvc contains shared code for controlling the Windows agent service.
Package controlsvc contains shared code for controlling the Windows agent service.
comp
agent
Package agent implements the "agent" bundle,
Package agent implements the "agent" bundle,
agent/autoexit
Package autoexit lets setup automatic shutdown mechanism if necessary
Package autoexit lets setup automatic shutdown mechanism if necessary
agent/autoexit/autoexitimpl
Package autoexitimpl implements autoexit.Component
Package autoexitimpl implements autoexit.Component
agent/cloudfoundrycontainer
Package cloudfoundrycontainer provides the cloud foundry container component.
Package cloudfoundrycontainer provides the cloud foundry container component.
agent/cloudfoundrycontainer/cloudfoundrycontainerimpl
Package cloudfoundrycontainerimpl provides the implementation of the cloud foundry container component.
Package cloudfoundrycontainerimpl provides the implementation of the cloud foundry container component.
agent/expvarserver
Package expvarserver contains the component type for the expVar server.
Package expvarserver contains the component type for the expVar server.
agent/expvarserver/expvarserverimpl
Package expvarserverimpl contains the implementation of the expVar server component.
Package expvarserverimpl contains the implementation of the expVar server component.
agent/jmxlogger
Package jmxlogger implements the logger for JMX.
Package jmxlogger implements the logger for JMX.
agent/jmxlogger/jmxloggerimpl
Package jmxloggerimpl implements the logger for JMX.
Package jmxloggerimpl implements the logger for JMX.
aggregator
Package aggregator implements the "aggregator" bundle,
Package aggregator implements the "aggregator" bundle,
aggregator/demultiplexer
Package demultiplexer defines the aggregator demultiplexer
Package demultiplexer defines the aggregator demultiplexer
aggregator/demultiplexer/demultiplexerimpl
Package demultiplexerimpl defines the aggregator demultiplexer
Package demultiplexerimpl defines the aggregator demultiplexer
aggregator/demultiplexerendpoint/def
Package demultiplexerendpoint component provides the /dogstatsd-contexts-dump API endpoint that can register via Fx value groups.
Package demultiplexerendpoint component provides the /dogstatsd-contexts-dump API endpoint that can register via Fx value groups.
aggregator/demultiplexerendpoint/fx
Package fx provides the fx module for the demultiplexerendpoint component
Package fx provides the fx module for the demultiplexerendpoint component
aggregator/demultiplexerendpoint/impl
Package demultiplexerendpointimpl component provides the /dogstatsd-contexts-dump API endpoint that can register via Fx value groups.
Package demultiplexerendpointimpl component provides the /dogstatsd-contexts-dump API endpoint that can register via Fx value groups.
aggregator/diagnosesendermanager
Package diagnosesendermanager defines the sender manager for the local diagnose check
Package diagnosesendermanager defines the sender manager for the local diagnose check
aggregator/diagnosesendermanager/diagnosesendermanagerimpl
Package diagnosesendermanagerimpl defines the sender manager for the local diagnose check
Package diagnosesendermanagerimpl defines the sender manager for the local diagnose check
api
Package api implements the "api" bundle,
Package api implements the "api" bundle,
api/api/apiimpl
Package apiimpl implements the internal Agent API which exposes endpoints such as config, flare or status
Package apiimpl implements the internal Agent API which exposes endpoints such as config, flare or status
api/api/apiimpl/internal/agent
Package agent implements the api endpoints for the `/agent` prefix.
Package agent implements the api endpoints for the `/agent` prefix.
api/api/apiimpl/internal/check
Package check implements the api endpoints for the `/check` prefix.
Package check implements the api endpoints for the `/check` prefix.
api/api/apiimpl/internal/config
Package config defines the config endpoint of the IPC API Server.
Package config defines the config endpoint of the IPC API Server.
api/api/apiimpl/observability
Package observability implements various observability handlers for the API servers
Package observability implements various observability handlers for the API servers
api/api/utils
Package utils has common utility methods that components can use for structuring http responses of their endpoints
Package utils has common utility methods that components can use for structuring http responses of their endpoints
api/api/utils/stream
Package stream has api stream utility methods that components can use for directing output to a stream receiver
Package stream has api stream utility methods that components can use for directing output to a stream receiver
api/commonendpoints/fx
Package fx provides Fx.Module with the common Agent API endpoints
Package fx provides Fx.Module with the common Agent API endpoints
api/commonendpoints/impl
Package impl provides common Agent API endpoints implementation
Package impl provides common Agent API endpoints implementation
autoscaling/datadogclient/def
Package datadogclient provides a client to query the datadog API
Package datadogclient provides a client to query the datadog API
autoscaling/datadogclient/fx
Package fx provides the fx module for the datadogclient component
Package fx provides the fx module for the datadogclient component
autoscaling/datadogclient/impl
Package datadogclientimpl implements the datadogclient component interface
Package datadogclientimpl implements the datadogclient component interface
checks
Package checks implements the "checks" bundle, for all of the component based agent checks
Package checks implements the "checks" bundle, for all of the component based agent checks
checks/agentcrashdetect
Package agentcrashdetect ...
Package agentcrashdetect ...
checks/agentcrashdetect/agentcrashdetectimpl
Package agentcrashdetectimpl currently has no implementation on non-Windows platforms
Package agentcrashdetectimpl currently has no implementation on non-Windows platforms
checks/windowseventlog
Package windowseventlog defines the Windows Event Log check component
Package windowseventlog defines the Windows Event Log check component
checks/windowseventlog/windowseventlogimpl
Package windowseventlogimpl provides the Windows Event Log check component
Package windowseventlogimpl provides the Windows Event Log check component
checks/windowseventlog/windowseventlogimpl/check
Package evtlog is not implemented on non-Windows platforms
Package evtlog is not implemented on non-Windows platforms
checks/windowseventlog/windowseventlogimpl/check/eventdatafilter
Package eventdatafilter provides functions to filter events based on event data.
Package eventdatafilter provides functions to filter events based on event data.
checks/winregistry
Package winregistry implements the Windows Registry check
Package winregistry implements the Windows Registry check
checks/winregistry/impl
Package winregistryimpl contains the implementation of the Windows Registry check
Package winregistryimpl contains the implementation of the Windows Registry check
collector
Package collector defines the collector bundle.
Package collector defines the collector bundle.
collector/collector
Package collector defines the collector component.
Package collector defines the collector component.
collector/collector/collectorimpl
Package collectorimpl provides the implementation of the collector component.
Package collectorimpl provides the implementation of the collector component.
core
Package core implements the "core" bundle, providing services common to all agent flavors and binaries.
Package core implements the "core" bundle, providing services common to all agent flavors and binaries.
core/agenttelemetry/def
Package agenttelemetry implements a component to generate Agent telemetry
Package agenttelemetry implements a component to generate Agent telemetry
core/agenttelemetry/fx
Package fx provides the fx module for the agenttelemetry component
Package fx provides the fx module for the agenttelemetry component
core/agenttelemetry/impl
Package agenttelemetryimpl provides the implementation of the agenttelemetry component.
Package agenttelemetryimpl provides the implementation of the agenttelemetry component.
core/autodiscovery
Package autodiscovery provides the autodiscovery component for the Datadog Agent
Package autodiscovery provides the autodiscovery component for the Datadog Agent
core/autodiscovery/autodiscoveryimpl
Package autodiscoveryimpl implements the agent's autodiscovery mechanism.
Package autodiscoveryimpl implements the agent's autodiscovery mechanism.
core/autodiscovery/common/types
Package types implements common structs used in the Autodiscovery code.
Package types implements common structs used in the Autodiscovery code.
core/autodiscovery/common/utils
Package utils implements helper methods used in the Autodiscovery code.
Package utils implements helper methods used in the Autodiscovery code.
core/autodiscovery/configresolver
Package configresolver resolves config templates using information from a service.
Package configresolver resolves config templates using information from a service.
core/autodiscovery/integration
Package integration contains the type that represents a configuration.
Package integration contains the type that represents a configuration.
core/autodiscovery/listeners
Package listeners is a wrapper that registers the available autodiscovery listerners.
Package listeners is a wrapper that registers the available autodiscovery listerners.
core/autodiscovery/noopimpl
Package noopautoconfig provides a noop implementation for the autodiscovery component
Package noopautoconfig provides a noop implementation for the autodiscovery component
core/autodiscovery/proto
Package proto provides autodiscovery proto util functions
Package proto provides autodiscovery proto util functions
core/autodiscovery/providers/names
Package names defines the name of each config provider ("container", "cluster-checks", "file", etc.).
Package names defines the name of each config provider ("container", "cluster-checks", "file", etc.).
core/autodiscovery/scheduler
Package scheduler is providing the `Scheduler` interface that should be implemented for any scheduler that would want to plug in `autodiscovery`.
Package scheduler is providing the `Scheduler` interface that should be implemented for any scheduler that would want to plug in `autodiscovery`.
core/autodiscovery/status
Package status fetch information needed to render the 'autodiscovery' section of the status page.
Package status fetch information needed to render the 'autodiscovery' section of the status page.
core/autodiscovery/stream
Package stream provides the autodiscovery config streaming logic
Package stream provides the autodiscovery config streaming logic
core/autodiscovery/telemetry
Package telemetry defines the Autodiscovery telemetry metrics.
Package telemetry defines the Autodiscovery telemetry metrics.
core/configsync
Package configsync implements synchronizing the configuration using the core agent config API
Package configsync implements synchronizing the configuration using the core agent config API
core/configsync/configsyncimpl
Package configsyncimpl implements synchronizing the configuration using the core agent config API
Package configsyncimpl implements synchronizing the configuration using the core agent config API
core/flare
Package flare implements a component to generate flares from the agent.
Package flare implements a component to generate flares from the agent.
core/flare/helpers
Package helpers contains helpers for the flare component.
Package helpers contains helpers for the flare component.
core/gui
Package gui provides the GUI server component for the Datadog Agent.
Package gui provides the GUI server component for the Datadog Agent.
core/gui/guiimpl
Package guiimpl implements the component gui
Package guiimpl implements the component gui
core/healthprobe/def
Package healthprobe implements the health check server
Package healthprobe implements the health check server
core/healthprobe/fx
Package fx provides the fx module for the healthprobe component
Package fx provides the fx module for the healthprobe component
core/healthprobe/impl
Package healthprobeimpl implements the healthprobe component interface
Package healthprobeimpl implements the healthprobe component interface
core/hostname
Package hostname exposes hostname.Get() as a component.
Package hostname exposes hostname.Get() as a component.
core/hostname/hostnameimpl
Package hostnameimpl implements the component hostname
Package hostnameimpl implements the component hostname
core/hostname/remotehostnameimpl
Package remotehostnameimpl provides a function to get the hostname from core agent.
Package remotehostnameimpl provides a function to get the hostname from core agent.
core/log/fx
Package fx defines the fx options for this component.
Package fx defines the fx options for this component.
core/log/fx-systemprobe
Package fx defines the fx options for this component.
Package fx defines the fx options for this component.
core/log/fx-trace
Package fx defines the fx options for this component.
Package fx defines the fx options for this component.
core/log/impl-systemprobe
Package systemprobeimpl implements a component to handle logging internal to the agent for system-probe.
Package systemprobeimpl implements a component to handle logging internal to the agent for system-probe.
core/lsof/def
Package lsof provides a flare file with data about files opened by the agent process
Package lsof provides a flare file with data about files opened by the agent process
core/lsof/fx
Package fx provides the fx module for the lsof component
Package fx provides the fx module for the lsof component
core/lsof/impl
Package lsofimpl implements the lsof component interface
Package lsofimpl implements the lsof component interface
core/pid
Package pid writes the current PID to a file, ensuring that the file doesn't exist or doesn't contain a PID for a running process.
Package pid writes the current PID to a file, ensuring that the file doesn't exist or doesn't contain a PID for a running process.
core/pid/pidimpl
Package pidimpl writes the current PID to a file, ensuring that the file
Package pidimpl writes the current PID to a file, ensuring that the file
core/remoteagentregistry/def
Package remoteagentregistry provides an integration point for remote agents to register and be able to report their status and emit flare data
Package remoteagentregistry provides an integration point for remote agents to register and be able to report their status and emit flare data
core/remoteagentregistry/fx
Package fx provides the fx module for the remoteagent component
Package fx provides the fx module for the remoteagent component
core/remoteagentregistry/impl
Package remoteagentregistryimpl implements the remoteagentregistry component interface
Package remoteagentregistryimpl implements the remoteagentregistry component interface
core/remoteagentregistry/proto
Package proto provides functions to convert between protobuf and remoteagent types.
Package proto provides functions to convert between protobuf and remoteagent types.
core/remoteagentregistry/status
Package status fetch information needed to render the 'remote agents' section of the status page
Package status fetch information needed to render the 'remote agents' section of the status page
core/remoteagentregistry/util
Package util provides utility functions for the remoteagent component.
Package util provides utility functions for the remoteagent component.
core/settings
Package settings defines the interface for the component that manage settings that can be changed at runtime
Package settings defines the interface for the component that manage settings that can be changed at runtime
core/settings/settingsimpl
Package settingsimpl implements the interface for the settings component
Package settingsimpl implements the interface for the settings component
core/sysprobeconfig
Package sysprobeconfig implements a component to handle system-probe configuration.
Package sysprobeconfig implements a component to handle system-probe configuration.
core/sysprobeconfig/sysprobeconfigimpl
Package sysprobeconfigimpl implements a component to handle system-probe configuration.
Package sysprobeconfigimpl implements a component to handle system-probe configuration.
core/tagger/api
Package api implements the Tagger API.
Package api implements the Tagger API.
core/tagger/collectors
Package collectors implements a collector for the Tagger component that subscribes to workloadmeta
Package collectors implements a collector for the Tagger component that subscribes to workloadmeta
core/tagger/common
Package common provides common utilities that are useful when interacting with the tagger.
Package common provides common utilities that are useful when interacting with the tagger.
core/tagger/def
Package tagger provides the tagger interface for the Datadog Agent
Package tagger provides the tagger interface for the Datadog Agent
core/tagger/fx
Package fx provides the fx module for the tagger component
Package fx provides the fx module for the tagger component
core/tagger/fx-dual
Package fx provides the fx module for the dual tagger component
Package fx provides the fx module for the dual tagger component
core/tagger/fx-noop
Package fx provides the fx module for the noop tagger component
Package fx provides the fx module for the noop tagger component
core/tagger/fx-remote
Package fx provides the fx module for the remote tagger component
Package fx provides the fx module for the remote tagger component
core/tagger/generic_store
Package genericstore defines a generic object store that satisfies a redundant use-case in the tagger component implementation.
Package genericstore defines a generic object store that satisfies a redundant use-case in the tagger component implementation.
core/tagger/impl
Package taggerimpl contains the implementation of the tagger component.
Package taggerimpl contains the implementation of the tagger component.
core/tagger/impl-dual
Package dualimpl contains the implementation of the dual tagger.
Package dualimpl contains the implementation of the dual tagger.
core/tagger/impl-noop
Package noopimpl provides a noop implementation for the tagger component
Package noopimpl provides a noop implementation for the tagger component
core/tagger/impl-remote
Package remoteimpl implements a remote Tagger.
Package remoteimpl implements a remote Tagger.
core/tagger/k8s_metadata
Package k8smetadata provides utilities to handle kubernetes metadata as tags
Package k8smetadata provides utilities to handle kubernetes metadata as tags
core/tagger/kubetags
Package kubetags provides utilities to handle tags related to Kubernetes.
Package kubetags provides utilities to handle tags related to Kubernetes.
core/tagger/proto
Package proto provides conversions between Tagger types and protobuf.
Package proto provides conversions between Tagger types and protobuf.
core/tagger/server
Package server implements a gRPC server that streams Tagger entities.
Package server implements a gRPC server that streams Tagger entities.
core/tagger/subscriber
Package subscriber implements the functionality needed to subscribe to events generated by the Tagger component.
Package subscriber implements the functionality needed to subscribe to events generated by the Tagger component.
core/tagger/taglist
Package taglist provides helpers to interact with a tag list.
Package taglist provides helpers to interact with a tag list.
core/tagger/tagstore
Package tagstore implements the TagStore which is the component of the Tagger responsible for storing the tags in memory.
Package tagstore implements the TagStore which is the component of the Tagger responsible for storing the tags in memory.
core/tagger/telemetry
Package telemetry defines the telemetry for the Tagger component.
Package telemetry defines the telemetry for the Tagger component.
core/workloadmeta/collectors/catalog
Package catalog is a wrapper that loads the available workloadmeta collectors.
Package catalog is a wrapper that loads the available workloadmeta collectors.
core/workloadmeta/collectors/catalog-core
Package catalog is a wrapper that loads the available workloadmeta collectors.
Package catalog is a wrapper that loads the available workloadmeta collectors.
core/workloadmeta/collectors/catalog-less
Package catalog is a wrapper that loads workloadmeta collectors, while having less than the full set.
Package catalog is a wrapper that loads workloadmeta collectors, while having less than the full set.
core/workloadmeta/collectors/catalog-remote
Package catalog is a wrapper that loads the available workloadmeta collectors.
Package catalog is a wrapper that loads the available workloadmeta collectors.
core/workloadmeta/collectors/internal/cloudfoundry/container
Package container provides a workloadmeta collector for CloudFoundry container
Package container provides a workloadmeta collector for CloudFoundry container
core/workloadmeta/collectors/internal/cloudfoundry/vm
Package vm provides a workloadmeta collector for CloudFoundry VM
Package vm provides a workloadmeta collector for CloudFoundry VM
core/workloadmeta/collectors/internal/containerd
Package containerd provides the containerd colletor for workloadmeta
Package containerd provides the containerd colletor for workloadmeta
core/workloadmeta/collectors/internal/crio
Package crio implements the crio Workloadmeta collector.
Package crio implements the crio Workloadmeta collector.
core/workloadmeta/collectors/internal/docker
Package docker provides the docker collector for workloadmeta
Package docker provides the docker collector for workloadmeta
core/workloadmeta/collectors/internal/ecs
Package ecs provides the ecs colletor for workloadmeta
Package ecs provides the ecs colletor for workloadmeta
core/workloadmeta/collectors/internal/ecsfargate
Package ecsfargate provides the ecsfargate colletor for workloadmeta
Package ecsfargate provides the ecsfargate colletor for workloadmeta
core/workloadmeta/collectors/internal/kubeapiserver
Package kubeapiserver provides the kubeapiserver colletor for workloadmeta
Package kubeapiserver provides the kubeapiserver colletor for workloadmeta
core/workloadmeta/collectors/internal/kubelet
Package kubelet provides the kubelet colletor for workloadmeta
Package kubelet provides the kubelet colletor for workloadmeta
core/workloadmeta/collectors/internal/kubemetadata
Package kubemetadata implements the kube_metadata Workloadmeta collector.
Package kubemetadata implements the kube_metadata Workloadmeta collector.
core/workloadmeta/collectors/internal/podman
Package podman provides the docker collector for workloadmeta
Package podman provides the docker collector for workloadmeta
core/workloadmeta/collectors/internal/process
Package process implements the local process collector for Workloadmeta.
Package process implements the local process collector for Workloadmeta.
core/workloadmeta/collectors/internal/remote
Package remote implements a generic workloadmeta Collector that receives events from a remote workloadmeta server.
Package remote implements a generic workloadmeta Collector that receives events from a remote workloadmeta server.
core/workloadmeta/collectors/internal/remote/processcollector
Package processcollector implements the remote process collector for Workloadmeta.
Package processcollector implements the remote process collector for Workloadmeta.
core/workloadmeta/collectors/internal/remote/workloadmeta
Package workloadmeta implements the remote workloadmeta Collector.
Package workloadmeta implements the remote workloadmeta Collector.
core/workloadmeta/collectors/util
Package util contains utility functions for workload metadata collectors
Package util contains utility functions for workload metadata collectors
core/workloadmeta/def
Package workloadmeta provides the workloadmeta component for the Datadog Agent
Package workloadmeta provides the workloadmeta component for the Datadog Agent
core/workloadmeta/defaults
Package defaults provides the default workloadmeta configuration for the agent.
Package defaults provides the default workloadmeta configuration for the agent.
core/workloadmeta/fx
Package fx provides the fx module for the workloadmeta component.
Package fx provides the fx module for the workloadmeta component.
core/workloadmeta/impl
Package workloadmetaimpl implements the Workloadmeta component.
Package workloadmetaimpl implements the Workloadmeta component.
core/workloadmeta/proto
Package proto provides conversions between Workloadmeta types and protobuf.
Package proto provides conversions between Workloadmeta types and protobuf.
core/workloadmeta/server
Package server implements a gRPC server that streams the entities stored in Workloadmeta.
Package server implements a gRPC server that streams the entities stored in Workloadmeta.
core/workloadmeta/telemetry
Package telemetry defines the telemetry for the Workloadmeta component.
Package telemetry defines the telemetry for the Workloadmeta component.
dogstatsd/listeners
Package listeners implements the StatsdListener interfaces.
Package listeners implements the StatsdListener interfaces.
dogstatsd/pidmap
Package pidmap implements a component for tracking pid and containerID relations
Package pidmap implements a component for tracking pid and containerID relations
dogstatsd/pidmap/pidmapimpl
Package pidmapimpl implements a component for storing pid - containerID relations
Package pidmapimpl implements a component for storing pid - containerID relations
dogstatsd/replay/def
Package replay is a component to run the dogstatsd capture/replay
Package replay is a component to run the dogstatsd capture/replay
dogstatsd/replay/fx-noop
Package fx provides an fx module for the noop implementation.
Package fx provides an fx module for the noop implementation.
dogstatsd/replay/impl-noop
Package noopimpl implements a no-op version of the component
Package noopimpl implements a no-op version of the component
dogstatsd/server
Package dogstatsd implements DogStatsD.
Package dogstatsd implements DogStatsD.
dogstatsd/serverDebug
Package serverdebug implements a component to run the dogstatsd server debug
Package serverdebug implements a component to run the dogstatsd server debug
dogstatsd/serverDebug/serverdebugimpl
Package serverdebugimpl implements a component to run the dogstatsd server debug
Package serverdebugimpl implements a component to run the dogstatsd server debug
dogstatsd/statsd
Package statsd implements a component to get a statsd client.
Package statsd implements a component to get a statsd client.
dogstatsd/status
Package status implements the core status component information provider interface
Package status implements the core status component information provider interface
dogstatsd/status/statusimpl
Package statusimpl implements the status component interface
Package statusimpl implements the status component interface
etw
Package etw provides an ETW tracing interface
Package etw provides an ETW tracing interface
forwarder
Package forwarder implements the "forwarder" bundle
Package forwarder implements the "forwarder" bundle
forwarder/eventplatform
Package eventplatform contains the logic for forwarding events to the event platform
Package eventplatform contains the logic for forwarding events to the event platform
forwarder/eventplatform/eventplatformimpl
Package eventplatformimpl contains the logic for forwarding events to the event platform
Package eventplatformimpl contains the logic for forwarding events to the event platform
forwarder/eventplatformreceiver
Package eventplatformreceiver implements the receiver for the event platform package
Package eventplatformreceiver implements the receiver for the event platform package
forwarder/eventplatformreceiver/eventplatformreceiverimpl
Package eventplatformreceiverimpl implements the event platform receiver component.
Package eventplatformreceiverimpl implements the event platform receiver component.
forwarder/orchestrator
Package orchestrator implements the orchestrator forwarder component.
Package orchestrator implements the orchestrator forwarder component.
forwarder/orchestrator/orchestratorimpl
Package orchestratorimpl implements the orchestrator forwarder component.
Package orchestratorimpl implements the orchestrator forwarder component.
haagent/def
Package haagent handles states for HA Agent feature.
Package haagent handles states for HA Agent feature.
haagent/fx
Package fx provides the fx module for the haagent component
Package fx provides the fx module for the haagent component
haagent/helpers
Package haagenthelpers provides helpers for haagent component
Package haagenthelpers provides helpers for haagent component
haagent/impl
Package haagentimpl implements the haagent component interface
Package haagentimpl implements the haagent component interface
languagedetection/client
Package client implements a component to send process metadata to the Cluster-Agent
Package client implements a component to send process metadata to the Cluster-Agent
languagedetection/client/clientimpl
Package clientimpl holds the client to send data to the Cluster-Agent
Package clientimpl holds the client to send data to the Cluster-Agent
logs/adscheduler
Package adscheduler is glue code to connect autodiscovery to the logs agent.
Package adscheduler is glue code to connect autodiscovery to the logs agent.
logs/adscheduler/adschedulerimpl
Package adschedulerimpl contains the AD scheduler implementation.
Package adschedulerimpl contains the AD scheduler implementation.
logs/agent
Package agent contains logs agent component.
Package agent contains logs agent component.
logs/agent/agentimpl
Package agentimpl contains the implementation of the logs agent component.
Package agentimpl contains the implementation of the logs agent component.
logs/integrations/def
Package integrations adds a go interface for integrations to register and send logs.
Package integrations adds a go interface for integrations to register and send logs.
logs/integrations/impl
Package integrationsimpl implements the integrations component interface
Package integrationsimpl implements the integrations component interface
logs/integrations/mock
Package mock implements a fake integrations component to be used in tests
Package mock implements a fake integrations component to be used in tests
metadata
Package metadata implements the "metadata" bundle, providing services and support for all the metadata payload sent by the Agent.
Package metadata implements the "metadata" bundle, providing services and support for all the metadata payload sent by the Agent.
metadata/host
Package host implements a component to generate the 'host' metadata payload (also known as "v5").
Package host implements a component to generate the 'host' metadata payload (also known as "v5").
metadata/host/hostimpl
Package hostimpl implements a component to generate the 'host' metadata payload (also known as "v5").
Package hostimpl implements a component to generate the 'host' metadata payload (also known as "v5").
metadata/host/hostimpl/hosttags
Package hosttags provides access to host tags
Package hosttags provides access to host tags
metadata/host/hostimpl/utils
Package utils generate host metadata payloads ready to be sent.
Package utils generate host metadata payloads ready to be sent.
metadata/internal/util
Package util offers helpers and building blocks to easily generate payloads for the inventory product.
Package util offers helpers and building blocks to easily generate payloads for the inventory product.
metadata/inventoryagent
Package inventoryagent implements a component to generate the 'datadog_agent' metadata payload for inventory.
Package inventoryagent implements a component to generate the 'datadog_agent' metadata payload for inventory.
metadata/inventoryagent/inventoryagentimpl
Package inventoryagentimpl implements a component to generate the 'datadog_agent' metadata payload for inventory.
Package inventoryagentimpl implements a component to generate the 'datadog_agent' metadata payload for inventory.
metadata/inventorychecks
Package inventorychecks implements a component to generate the 'check_metadata' metadata payload for inventory.
Package inventorychecks implements a component to generate the 'check_metadata' metadata payload for inventory.
metadata/inventorychecks/inventorychecksimpl
Package inventorychecksimpl implements the inventorychecks component interface.
Package inventorychecksimpl implements the inventorychecks component interface.
metadata/inventoryhost
Package inventoryhost exposes the interface for the component to generate the 'host_metadata' metadata payload for inventory.
Package inventoryhost exposes the interface for the component to generate the 'host_metadata' metadata payload for inventory.
metadata/inventoryhost/inventoryhostimpl
Package inventoryhostimpl implements a component to generate the 'host_metadata' metadata payload for inventory.
Package inventoryhostimpl implements a component to generate the 'host_metadata' metadata payload for inventory.
metadata/inventoryotel
Package inventoryotel implements a component to generate the 'datadog_agent' metadata payload for inventory.
Package inventoryotel implements a component to generate the 'datadog_agent' metadata payload for inventory.
metadata/inventoryotel/inventoryotelimpl
Package inventoryotelimpl implements a component to generate the 'datadog_agent' metadata payload for inventory.
Package inventoryotelimpl implements a component to generate the 'datadog_agent' metadata payload for inventory.
metadata/packagesigning
Package packagesigning implements a component to generate the 'signing' metadata payload for DD inventory (REDAPL).
Package packagesigning implements a component to generate the 'signing' metadata payload for DD inventory (REDAPL).
metadata/packagesigning/packagesigningimpl
Package packagesigningimpl implements the inventory signing component, to collect package signing keys.
Package packagesigningimpl implements the inventory signing component, to collect package signing keys.
metadata/packagesigning/utils
Package utils defines shared methods in package signing component
Package utils defines shared methods in package signing component
metadata/resources
Package resources implements a component to generate the 'resources' metadata payload.
Package resources implements a component to generate the 'resources' metadata payload.
metadata/runner
Package runner implements a component to generate metadata payload at the right interval.
Package runner implements a component to generate metadata payload at the right interval.
metadata/securityagent/def
Package securityagent is the metadata provider for security-agent process
Package securityagent is the metadata provider for security-agent process
metadata/securityagent/fx
Package fx provides the fx module for the security-agent metadata component
Package fx provides the fx module for the security-agent metadata component
metadata/securityagent/impl
Package securityagentimpl implements the securityagent metadata providers interface
Package securityagentimpl implements the securityagent metadata providers interface
metadata/systemprobe/def
Package systemprobe is the metadata provider for system-probe process
Package systemprobe is the metadata provider for system-probe process
metadata/systemprobe/fx
Package fx provides the fx module for the systemprobe metadata component
Package fx provides the fx module for the systemprobe metadata component
metadata/systemprobe/impl
Package systemprobeimpl implements the systemprobe metadata providers interface
Package systemprobeimpl implements the systemprobe metadata providers interface
ndmtmp
Package ndmtmp implements the "ndmtmp" bundle, which exposes the default sender.Sender and the event platform forwarder.
Package ndmtmp implements the "ndmtmp" bundle, which exposes the default sender.Sender and the event platform forwarder.
ndmtmp/forwarder
Package forwarder exposes the event platform forwarder for netflow.
Package forwarder exposes the event platform forwarder for netflow.
ndmtmp/forwarder/forwarderimpl
Package forwarderimpl exposes the event platform forwarder for netflow.
Package forwarderimpl exposes the event platform forwarder for netflow.
netflow
Package netflow implements the "netflow" bundle, which listens for netflow packets, processes them, and forwards relevant data to the backend.
Package netflow implements the "netflow" bundle, which listens for netflow packets, processes them, and forwards relevant data to the backend.
netflow/common
Package common provides a flow type and a few standard helpers.
Package common provides a flow type and a few standard helpers.
netflow/config
Package config exposes the netflow configuration as a component.
Package config exposes the netflow configuration as a component.
netflow/flowaggregator
Package flowaggregator defines tools for aggregating observed netflows.
Package flowaggregator defines tools for aggregating observed netflows.
netflow/format
Package format provides methods for converting various netflow-related structures and values into strings.
Package format provides methods for converting various netflow-related structures and values into strings.
netflow/goflowlib
Package goflowlib provides converters between the goflow library and the types used internally for netflow at Datadog.
Package goflowlib provides converters between the goflow library and the types used internally for netflow at Datadog.
netflow/goflowlib/additionalfields
Package additionalfields provides a producer collecting additional fields from Netflow/IPFIX packets.
Package additionalfields provides a producer collecting additional fields from Netflow/IPFIX packets.
netflow/goflowlib/netflowstate
Package netflowstate provides a Netflow state manager on top of goflow default producer, to allow additional fields collection.
Package netflowstate provides a Netflow state manager on top of goflow default producer, to allow additional fields collection.
netflow/portrollup
Package portrollup provides a type for tracking observed connections between ports on different devices and identifying when a port connects to many different ports and so should have all traffic rolled up into a single flow for reporting purposes.
Package portrollup provides a type for tracking observed connections between ports on different devices and identifying when a port connects to many different ports and so should have all traffic rolled up into a single flow for reporting purposes.
netflow/server
Package server implements a component that runs the netflow server.
Package server implements a component that runs the netflow server.
netflow/testutil
Package testutil includes NetFlow test utilities.
Package testutil includes NetFlow test utilities.
networkpath
Package networkpath implements the "networkpath" bundle,
Package networkpath implements the "networkpath" bundle,
networkpath/npcollector
Package npcollector used to manage network paths
Package npcollector used to manage network paths
networkpath/npcollector/npcollectorimpl
Package npcollectorimpl implements network path collector
Package npcollectorimpl implements network path collector
networkpath/npcollector/npcollectorimpl/common
Package common contains common structures and constants used for NpCollector
Package common contains common structures and constants used for NpCollector
networkpath/npcollector/npcollectorimpl/pathteststore
Package pathteststore handle pathtest storage
Package pathteststore handle pathtest storage
otelcol
Package otelcol contains the OTLP ingest bundle pipeline to be included into the agent components.
Package otelcol contains the OTLP ingest bundle pipeline to be included into the agent components.
otelcol/collector-contrib/fx
Package collectorcontribfx provides fx access for the collectorcontrib component
Package collectorcontribfx provides fx access for the collectorcontrib component
otelcol/collector/def
Package collector defines the OpenTelemetry Collector component.
Package collector defines the OpenTelemetry Collector component.
otelcol/collector/fx-pipeline
Package fx creates the modules for fx
Package fx creates the modules for fx
otelcol/collector/impl-pipeline
Package pipelineimpl contains a no-op implementation of the collector
Package pipelineimpl contains a no-op implementation of the collector
otelcol/converter/fx
Package converterfx provides fx access for the provider component
Package converterfx provides fx access for the provider component
otelcol/ddflareextension/fx
Package ddflareextensionfx provides fx access for the provider component
Package ddflareextensionfx provides fx access for the provider component
otelcol/otlp
Package otlp contains structures which aid in constructing an OpenTelemetry Collector to be embedded into the Datadog Agent.
Package otlp contains structures which aid in constructing an OpenTelemetry Collector to be embedded into the Datadog Agent.
otelcol/otlp/configcheck
Package configcheck exposes helpers to fetch config.
Package configcheck exposes helpers to fetch config.
otelcol/otlp/datatype
Package datatype declares basic datatypes used by OTLP
Package datatype declares basic datatypes used by OTLP
otelcol/otlp/integrationtest
Package integrationtest contains integration tests for OTel agent
Package integrationtest contains integration tests for OTel agent
otelcol/otlp/internal/configutils
Package configutils contains utilities used for reading configuration.
Package configutils contains utilities used for reading configuration.
process
Package process implements the "process" bundle, providing components for the Process Agent
Package process implements the "process" bundle, providing components for the Process Agent
process/agent
Package agent contains a process-agent component
Package agent contains a process-agent component
process/agent/agentimpl
Package agentimpl implements a component for the process agent.
Package agentimpl implements a component for the process agent.
process/apiserver
Package apiserver initializes the api server that powers many subcommands.
Package apiserver initializes the api server that powers many subcommands.
process/connectionscheck
Package connectionscheck implements a component to handle Connections data collection in the Process Agent.
Package connectionscheck implements a component to handle Connections data collection in the Process Agent.
process/connectionscheck/connectionscheckimpl
Package connectionscheckimpl implements a component to handle Connections data collection in the Process Agent.
Package connectionscheckimpl implements a component to handle Connections data collection in the Process Agent.
process/containercheck
Package containercheck implements a component to handle Container data collection in the Process Agent.
Package containercheck implements a component to handle Container data collection in the Process Agent.
process/containercheck/containercheckimpl
Package containercheckimpl implements a component to handle Container data collection in the Process Agent.
Package containercheckimpl implements a component to handle Container data collection in the Process Agent.
process/expvars
Package expvars initializes the expvar server of the process agent.
Package expvars initializes the expvar server of the process agent.
process/expvars/expvarsimpl
Package expvarsimpl initializes the expvar server of the process agent.
Package expvarsimpl initializes the expvar server of the process agent.
process/forwarders
Package forwarders implements a component to provide forwarders used by the process agent.
Package forwarders implements a component to provide forwarders used by the process agent.
process/forwarders/forwardersimpl
Package forwardersimpl implements a component to provide forwarders used by the process agent.
Package forwardersimpl implements a component to provide forwarders used by the process agent.
process/hostinfo
Package hostinfo wraps the hostinfo inside a component.
Package hostinfo wraps the hostinfo inside a component.
process/hostinfo/hostinfoimpl
Package hostinfoimpl wraps the hostinfo inside a component.
Package hostinfoimpl wraps the hostinfo inside a component.
process/processcheck
Package processcheck implements a component to handle Process data collection in the Process Agent.
Package processcheck implements a component to handle Process data collection in the Process Agent.
process/processcheck/processcheckimpl
Package processcheckimpl implements a component to handle Process data collection in the Process Agent.
Package processcheckimpl implements a component to handle Process data collection in the Process Agent.
process/processdiscoverycheck
Package processdiscoverycheck implements a component to handle Process Discovery data collection in the Process Agent for customers who do not pay for live processes.
Package processdiscoverycheck implements a component to handle Process Discovery data collection in the Process Agent for customers who do not pay for live processes.
process/processdiscoverycheck/processdiscoverycheckimpl
Package processdiscoverycheckimpl implements a component to handle Process Discovery data collection in the Process Agent for customers who do not pay for live processes.
Package processdiscoverycheckimpl implements a component to handle Process Discovery data collection in the Process Agent for customers who do not pay for live processes.
process/processeventscheck
Package processeventscheck implements a component to handle Process Events data collection in the Process Agent.
Package processeventscheck implements a component to handle Process Events data collection in the Process Agent.
process/processeventscheck/processeventscheckimpl
Package processeventscheckimpl implements a component to handle Process Events data collection in the Process Agent.
Package processeventscheckimpl implements a component to handle Process Events data collection in the Process Agent.
process/profiler
Package profiler implements a component to handle starting and stopping the internal profiler.
Package profiler implements a component to handle starting and stopping the internal profiler.
process/profiler/profilerimpl
Package profilerimpl implements a component to handle starting and stopping the internal profiler.
Package profilerimpl implements a component to handle starting and stopping the internal profiler.
process/rtcontainercheck
Package rtcontainercheck implements a component to handle realtime Container data collection in the Process Agent.
Package rtcontainercheck implements a component to handle realtime Container data collection in the Process Agent.
process/rtcontainercheck/rtcontainercheckimpl
Package rtcontainercheckimpl implements a component to handle realtime Container data collection in the Process Agent.
Package rtcontainercheckimpl implements a component to handle realtime Container data collection in the Process Agent.
process/runner
Package runner implements a component to run data collection checks in the Process Agent.
Package runner implements a component to run data collection checks in the Process Agent.
process/runner/runnerimpl
Package runnerimpl implements a component to run data collection checks in the Process Agent.
Package runnerimpl implements a component to run data collection checks in the Process Agent.
process/status
Package status implements the core status component information provider interface
Package status implements the core status component information provider interface
process/status/statusimpl
Package statusimpl implements the status component interface
Package statusimpl implements the status component interface
process/submitter
Package submitter implements a component to submit collected data in the Process Agent to supported Datadog intakes.
Package submitter implements a component to submit collected data in the Process Agent to supported Datadog intakes.
process/submitter/submitterimpl
Package submitterimpl implements a component to submit collected data in the Process Agent to supported Datadog intakes.
Package submitterimpl implements a component to submit collected data in the Process Agent to supported Datadog intakes.
rdnsquerier/def
Package rdnsquerier provides the reverse DNS querier component.
Package rdnsquerier provides the reverse DNS querier component.
rdnsquerier/fx
Package fx provides the fx module for the rdnsquerier component
Package fx provides the fx module for the rdnsquerier component
rdnsquerier/fx-mock
Package fx provides the fxmock module for the rdnsquerier component
Package fx provides the fxmock module for the rdnsquerier component
rdnsquerier/fx-none
Package fx provides the fx module for the noop rdnsquerier component
Package fx provides the fx module for the noop rdnsquerier component
rdnsquerier/impl
Package rdnsquerierimpl implements the rdnsquerier component interface
Package rdnsquerierimpl implements the rdnsquerier component interface
rdnsquerier/impl-none
Package noneimpl provides the noop rdnsquerier component
Package noneimpl provides the noop rdnsquerier component
remote-config
Package remoteconfig defines the fx options for the Bundle
Package remoteconfig defines the fx options for the Bundle
remote-config/rcclient/rcclientimpl
Package rcclientimpl is a remote config client that can run within the agent to receive configurations.
Package rcclientimpl is a remote config client that can run within the agent to receive configurations.
remote-config/rcclient/types
Package types provides the different types used by other component to provider remote-config task listeners.
Package types provides the different types used by other component to provider remote-config task listeners.
remote-config/rcservice
Package rcservice is a remote config service that can run within the agent to receive remote config updates from the DD backend.
Package rcservice is a remote config service that can run within the agent to receive remote config updates from the DD backend.
remote-config/rcservice/rcserviceimpl
Package rcserviceimpl is a remote config service that can run within the agent to receive remote config updates from the DD backend.
Package rcserviceimpl is a remote config service that can run within the agent to receive remote config updates from the DD backend.
remote-config/rcservicemrf
Package rcservicemrf is a remote config service that can run in the Agent to receive remote config updates from the DD failover DC backend.
Package rcservicemrf is a remote config service that can run in the Agent to receive remote config updates from the DD failover DC backend.
remote-config/rcservicemrf/rcservicemrfimpl
Package rcservicemrfimpl is a remote config service that can run within the agent to receive remote config updates from the configured DD failover DC
Package rcservicemrfimpl is a remote config service that can run within the agent to receive remote config updates from the configured DD failover DC
remote-config/rcstatus
Package rcstatus implements the core status component information provider interface
Package rcstatus implements the core status component information provider interface
remote-config/rctelemetryreporter
Package rctelemetryreporter provides a component that sends RC-specific metrics to the DD backend.
Package rctelemetryreporter provides a component that sends RC-specific metrics to the DD backend.
remote-config/rctelemetryreporter/rctelemetryreporterimpl
Package rctelemetryreporterimpl provides a DdRcTelemetryReporter that sends RC-specific metrics to the DD backend.
Package rctelemetryreporterimpl provides a DdRcTelemetryReporter that sends RC-specific metrics to the DD backend.
snmpscan/def
Package snmpscan is a light component that can be used to perform a scan or a walk of a particular device
Package snmpscan is a light component that can be used to perform a scan or a walk of a particular device
snmpscan/fx
Package fx provides the fx module for the snmpscan component
Package fx provides the fx module for the snmpscan component
snmpscan/impl
Package snmpscanimpl implements the snmpscan component interface
Package snmpscanimpl implements the snmpscan component interface
snmptraps
Package snmptraps implements the a server that listens for SNMP trap data and sends it to the backend.
Package snmptraps implements the a server that listens for SNMP trap data and sends it to the backend.
snmptraps/config
Package config implements the configuration type for the traps server and a component that provides it.
Package config implements the configuration type for the traps server and a component that provides it.
snmptraps/config/configimpl
Package configimpl implements the config service.
Package configimpl implements the config service.
snmptraps/formatter
Package formatter provides a component for formatting SNMP traps.
Package formatter provides a component for formatting SNMP traps.
snmptraps/formatter/formatterimpl
Package formatterimpl implements the formatter component.
Package formatterimpl implements the formatter component.
snmptraps/forwarder
Package forwarder defines a component that receives trap data from the listener component, formats it properly, and sends it to the backend.
Package forwarder defines a component that receives trap data from the listener component, formats it properly, and sends it to the backend.
snmptraps/forwarder/forwarderimpl
Package forwarderimpl implements the forwarder component.
Package forwarderimpl implements the forwarder component.
snmptraps/listener
Package listener implements a component that listens for SNMP messages, parses them, and publishes messages on a channel.
Package listener implements a component that listens for SNMP messages, parses them, and publishes messages on a channel.
snmptraps/listener/listenerimpl
Package listenerimpl implements the Listener component.
Package listenerimpl implements the Listener component.
snmptraps/oidresolver
Package oidresolver resolves OIDs
Package oidresolver resolves OIDs
snmptraps/oidresolver/oidresolverimpl
Package oidresolverimpl implements the OID Resolver component.
Package oidresolverimpl implements the OID Resolver component.
snmptraps/packet
Package packet defines an SNMP packet type and related helpers.
Package packet defines an SNMP packet type and related helpers.
snmptraps/server
Package server implements a component that runs the traps server.
Package server implements a component that runs the traps server.
snmptraps/server/serverimpl
Package serverimpl implements the traps server.
Package serverimpl implements the traps server.
snmptraps/snmplog
Package snmplog provides a GoSNMP logger that wraps our logger.
Package snmplog provides a GoSNMP logger that wraps our logger.
snmptraps/status
Package status exposes the expvars we use for status tracking to the component system.
Package status exposes the expvars we use for status tracking to the component system.
snmptraps/status/statusimpl
Package statusimpl implements the Status component.
Package statusimpl implements the Status component.
systray
Package systray implements the Datadog Agent Manager System Tray
Package systray implements the Datadog Agent Manager System Tray
systray/systray
Package systray provides a component for the system tray application
Package systray provides a component for the system tray application
systray/systray/systrayimpl
Package systrayimpl provides a component for the system tray application
Package systrayimpl provides a component for the system tray application
trace
Package trace implements the "trace" bundle, providing components for the Trace Agent
Package trace implements the "trace" bundle, providing components for the Trace Agent
trace/agent/fx
Package fx provides fx options for the agent component.
Package fx provides fx options for the agent component.
trace/agent/impl
Package agentimpl defines the tracer agent.
Package agentimpl defines the tracer agent.
trace/compression/fx-gzip
Package fx provides fx options for the compression component.
Package fx provides fx options for the compression component.
trace/compression/fx-zstd
Package fx provides fx options for the compression component.
Package fx provides fx options for the compression component.
trace/config
Package config implements a component to handle trace-agent configuration.
Package config implements a component to handle trace-agent configuration.
trace/etwtracer
Package etwtracer provides ETW events to the .Net tracer
Package etwtracer provides ETW events to the .Net tracer
trace/etwtracer/etwtracerimpl
Package etwtracerimpl provides a component for the .Net tracer application
Package etwtracerimpl provides a component for the .Net tracer application
trace/status
Package status implements the core status component information provider interface
Package status implements the core status component information provider interface
trace/status/statusimpl
Package statusimpl implements the status component interface
Package statusimpl implements the status component interface
updater
Package updater implements the updater component.
Package updater implements the updater component.
updater/localapi
Package localapi is the updater local api component.
Package localapi is the updater local api component.
updater/localapi/localapiimpl
Package localapiimpl implements the installer local api component.
Package localapiimpl implements the installer local api component.
updater/localapiclient
Package localapiclient provides the local API client component.
Package localapiclient provides the local API client component.
updater/localapiclient/localapiclientimpl
Package localapiclientimpl provides the local API client component.
Package localapiclientimpl provides the local API client component.
updater/telemetry
Package telemetry provides the installer telemetry component.
Package telemetry provides the installer telemetry component.
updater/telemetry/telemetryimpl
Package telemetryimpl provides the telemetry component implementation.
Package telemetryimpl provides the telemetry component implementation.
updater/updater
Package updater is the updater component.
Package updater is the updater component.
updater/updater/updaterimpl
Package updaterimpl implements the updater component.
Package updaterimpl implements the updater component.
api/api/def Module
api/authtoken Module
core/config Module
core/log Module
core/log/def Module
core/log/impl Module
core/log/mock Module
core/secrets Module
core/status Module
def Module
internal
remote-agent
Package main contains the logic for the remote-agent example client
Package main contains the logic for the remote-agent example client
pkg
cli/standalone
Package standalone provides utility functions for Agent CLI commands that set up a new in-process Agent runtime (ex: check, jmx commands), as opposed to CLI commands that query a running Agent's IPC API.
Package standalone provides utility functions for Agent CLI commands that set up a new in-process Agent runtime (ex: check, jmx commands), as opposed to CLI commands that query a running Agent's IPC API.
cli/subcommands/check
Package check builds a 'check' command to be used in binaries.
Package check builds a 'check' command to be used in binaries.
cli/subcommands/clusterchecks
Package clusterchecks builds a 'clusterchecks' command to be used in binaries.
Package clusterchecks builds a 'clusterchecks' command to be used in binaries.
cli/subcommands/config
Package config builds a 'config' command to be used in binaries.
Package config builds a 'config' command to be used in binaries.
cli/subcommands/dcaconfigcheck
Package dcaconfigcheck builds a 'configcheck' command to be used in binaries.
Package dcaconfigcheck builds a 'configcheck' command to be used in binaries.
cli/subcommands/dcaflare
Package dcaflare defines the flare command for cluster-agent
Package dcaflare defines the flare command for cluster-agent
cli/subcommands/health
Package health builds a 'health' command to be used in binaries.
Package health builds a 'health' command to be used in binaries.
cli/subcommands/taggerlist
Package taggerlist implements 'agent tagger-list'.
Package taggerlist implements 'agent tagger-list'.
cli/subcommands/version
Package version builds a 'version' command to be used in binaries.
Package version builds a 'version' command to be used in binaries.
cli/subcommands/workloadlist
Package workloadlist implements 'agent workload-list'.
Package workloadlist implements 'agent workload-list'.
clusteragent
Package clusteragent contains the functionality of the Cluster Agent.
Package clusteragent contains the functionality of the Cluster Agent.
clusteragent/api
Package api contains the telemetry of the Cluster Agent API and implements the forwarding of queries from Cluster Agent followers to the leader.
Package api contains the telemetry of the Cluster Agent API and implements the forwarding of queries from Cluster Agent followers to the leader.
clusteragent/api/v1
Package v1 contains the types of the Cluster Agent API (v1).
Package v1 contains the types of the Cluster Agent API (v1).
clusteragent/autoscaling
Package autoscaling implements common components for all autoscaling controllers.
Package autoscaling implements common components for all autoscaling controllers.
clusteragent/autoscaling/custommetrics
Package custommetrics implements the part of the Cluster Agent that's responsible for providing custom metrics to the Kubernetes apiserver for Horizontal Pod Autoscalers.
Package custommetrics implements the part of the Cluster Agent that's responsible for providing custom metrics to the Kubernetes apiserver for Horizontal Pod Autoscalers.
clusteragent/autoscaling/externalmetrics
Package externalmetrics implements the part of the Cluster Agent that's responsible for providing custom metrics to the Kubernetes apiserver for Horizontal Pod Autoscalers.
Package externalmetrics implements the part of the Cluster Agent that's responsible for providing custom metrics to the Kubernetes apiserver for Horizontal Pod Autoscalers.
clusteragent/autoscaling/workload
Package workload implements the DatadogPodAutoscaler controller and related components to implement horizontal and vertical pod autoscaling.
Package workload implements the DatadogPodAutoscaler controller and related components to implement horizontal and vertical pod autoscaling.
clusteragent/autoscaling/workload/model
Package model implements data model structures and helpers for workload autoscaling.
Package model implements data model structures and helpers for workload autoscaling.
clusteragent/clusterchecks/types
Package types implements the types used by the Cluster checks dispatching functionality.
Package types implements the types used by the Cluster checks dispatching functionality.
clusteragent/languagedetection
Package languagedetection implements the language detection patcher.
Package languagedetection implements the language detection patcher.
collector
Package collector provides the implementation of the collector
Package collector provides the implementation of the collector
collector/corechecks/cluster
Package cluster provides core checks for cluster level checks, used by the Datadog Cluster Agent.
Package cluster provides core checks for cluster level checks, used by the Datadog Cluster Agent.
collector/corechecks/cluster/ksm
Package ksm implements the Kubernetes State Core cluster check.
Package ksm implements the Kubernetes State Core cluster check.
collector/corechecks/cluster/ksm/customresources
Package customresources implements custom resources that are not yet supported in the kube-state-metrics library or that were supported at some point, but now they're not, and we still want to keep backwards compatibility.
Package customresources implements custom resources that are not yet supported in the kube-state-metrics library or that were supported at some point, but now they're not, and we still want to keep backwards compatibility.
collector/corechecks/containerimage
Package containerimage implements the container image check.
Package containerimage implements the container image check.
collector/corechecks/containerlifecycle
Package containerlifecycle implements the container lifecycle check.
Package containerlifecycle implements the container lifecycle check.
collector/corechecks/containers
Package containers provides core checks for containers and orchestrators
Package containers provides core checks for containers and orchestrators
collector/corechecks/containers/generic
Package generic implements the container check.
Package generic implements the container check.
collector/corechecks/ebpf
Package ebpf contains all the ebpf-based checks.
Package ebpf contains all the ebpf-based checks.
collector/corechecks/ebpf/oomkill
Package oomkill contains the OOMKill check.
Package oomkill contains the OOMKill check.
collector/corechecks/ebpf/probe/ebpfcheck
Package ebpfcheck is the system-probe side of the eBPF check
Package ebpfcheck is the system-probe side of the eBPF check
collector/corechecks/ebpf/probe/ebpfcheck/model
Package model is the types for the eBPF check
Package model is the types for the eBPF check
collector/corechecks/ebpf/probe/oomkill
Package oomkill is the system-probe side of the OOM Kill check
Package oomkill is the system-probe side of the OOM Kill check
collector/corechecks/ebpf/probe/oomkill/model
Package model is the types for the OOM Kill check
Package model is the types for the OOM Kill check
collector/corechecks/ebpf/probe/tcpqueuelength
Package tcpqueuelength is the system-probe side of the TCP Queue Length check
Package tcpqueuelength is the system-probe side of the TCP Queue Length check
collector/corechecks/ebpf/probe/tcpqueuelength/model
Package model is the types for the TCP Queue Length check
Package model is the types for the TCP Queue Length check
collector/corechecks/ebpf/tcpqueuelength
Package tcpqueuelength contains the TCP Queue Length check
Package tcpqueuelength contains the TCP Queue Length check
collector/corechecks/embed/apm
Package apm provides a stub for the APM check
Package apm provides a stub for the APM check
collector/corechecks/gpu
Package gpu defines the agent corecheck for the GPU integration
Package gpu defines the agent corecheck for the GPU integration
collector/corechecks/gpu/model
Package model contains the model for the GPU check, with types shared between the system-probe GPU probe and the gpu core agent check
Package model contains the model for the GPU check, with types shared between the system-probe GPU probe and the gpu core agent check
collector/corechecks/gpu/nvidia
Package nvidia holds the logic to collect metrics from the NVIDIA Management Library (NVML).
Package nvidia holds the logic to collect metrics from the NVIDIA Management Library (NVML).
collector/corechecks/net
Package net provides core checks for networking
Package net provides core checks for networking
collector/corechecks/network-devices/cisco-sdwan
Package ciscosdwan implements NDM Cisco SD-WAN corecheck
Package ciscosdwan implements NDM Cisco SD-WAN corecheck
collector/corechecks/network-devices/cisco-sdwan/client
Package client implements a Cisco SD-WAN API client
Package client implements a Cisco SD-WAN API client
collector/corechecks/network-devices/cisco-sdwan/payload
Package payload implement processing of Cisco SD-WAN api responses
Package payload implement processing of Cisco SD-WAN api responses
collector/corechecks/network-devices/cisco-sdwan/report
Package report implements Cisco SD-WAN metadata and metrics reporting
Package report implements Cisco SD-WAN metadata and metrics reporting
collector/corechecks/networkpath
Package networkpath defines the agent corecheck for the Network Path integration
Package networkpath defines the agent corecheck for the Network Path integration
collector/corechecks/nvidia/jetson
Package nvidia provides core checks for Nvidia's jetson device family
Package nvidia provides core checks for Nvidia's jetson device family
collector/corechecks/oracle
Package systemd provides core checks for oracle
Package systemd provides core checks for oracle
collector/corechecks/orchestrator
Package orchestrator holds orchestrator checks ourside the cluster agent
Package orchestrator holds orchestrator checks ourside the cluster agent
collector/corechecks/orchestrator/ecs
Package ecs is used for the orchestrator ECS check
Package ecs is used for the orchestrator ECS check
collector/corechecks/orchestrator/pod
Package pod is used for the orchestrator pod check
Package pod is used for the orchestrator pod check
collector/corechecks/sbom
Package sbom provides core checks for SBOM generation
Package sbom provides core checks for SBOM generation
collector/corechecks/servicediscovery
Package servicediscovery contains the Service Discovery corecheck.
Package servicediscovery contains the Service Discovery corecheck.
collector/corechecks/servicediscovery/apm
Package apm provides functionality to detect the type of APM instrumentation a service is using.
Package apm provides functionality to detect the type of APM instrumentation a service is using.
collector/corechecks/servicediscovery/apm/testutil/instrumented
Package main is a go application which use dd-trace-go, in order to test static APM instrumentation detection.
Package main is a go application which use dd-trace-go, in order to test static APM instrumentation detection.
collector/corechecks/servicediscovery/apm/testutil/instrumented2
Package main is a go application which use dd-trace-go, in order to test static APM instrumentation detection.
Package main is a go application which use dd-trace-go, in order to test static APM instrumentation detection.
collector/corechecks/servicediscovery/envs
Package envs provides target environment variables of interest.
Package envs provides target environment variables of interest.
collector/corechecks/servicediscovery/language
Package language provides functionality to detect the programming language for a given process.
Package language provides functionality to detect the programming language for a given process.
collector/corechecks/servicediscovery/language/reader
Package reader provides utils around io.Reader.
Package reader provides utils around io.Reader.
collector/corechecks/servicediscovery/model
Package model contains types for service discovery.
Package model contains types for service discovery.
collector/corechecks/servicediscovery/module
Package module implements a system-probe Module interface for the discovery component.
Package module implements a system-probe Module interface for the discovery component.
collector/corechecks/servicediscovery/module/testutil/fake_server
Package main is a simple TCP server which accepts any command line arguments, in order to test service discovery which uses the command line for detection.
Package main is a simple TCP server which accepts any command line arguments, in order to test service discovery which uses the command line for detection.
collector/corechecks/servicediscovery/servicetype
Package servicetype provides functionality to detect the service type for a given process.
Package servicetype provides functionality to detect the service type for a given process.
collector/corechecks/servicediscovery/usm
Package usm provides functionality to detect the most appropriate service name for a process.
Package usm provides functionality to detect the most appropriate service name for a process.
collector/corechecks/snmp
Package snmp contains the SNMP corecheck integration
Package snmp contains the SNMP corecheck integration
collector/corechecks/snmp/internal/common
Package common contains constants and basic structures used in snmp integration
Package common contains constants and basic structures used in snmp integration
collector/corechecks/snmp/internal/configvalidation
Package configvalidation contains validation and enrichment functions
Package configvalidation contains validation and enrichment functions
collector/corechecks/snmp/internal/profile
Package profile contains profile related code
Package profile contains profile related code
collector/corechecks/snmp/internal/report
Package report is a package that reports metrics for the device check
Package report is a package that reports metrics for the device check
collector/corechecks/snmp/status
Package status contains the SNMP Profiles status provider
Package status contains the SNMP Profiles status provider
collector/corechecks/system
Package system provides core checks for OS-level system metrics
Package system provides core checks for OS-level system metrics
collector/corechecks/system/filehandles
Package filehandles defines the file_handle core check
Package filehandles defines the file_handle core check
collector/corechecks/system/wincrashdetect
Package wincrashdetect implements the windows crash detection on windows.
Package wincrashdetect implements the windows crash detection on windows.
collector/corechecks/system/wincrashdetect/probe
Package probe parses Windows crash dumps.
Package probe parses Windows crash dumps.
collector/corechecks/systemd
Package systemd provides core checks for systemd
Package systemd provides core checks for systemd
collector/corechecks/telemetry
Package telemetry is a check to collect and send limited subset of internal telemetry from the core agent.
Package telemetry is a check to collect and send limited subset of internal telemetry from the core agent.
collector/externalhost
Package externalhost implements the External Host Tags metadata provider.
Package externalhost implements the External Host Tags metadata provider.
commonchecks
Package commonchecks contains shared checks for multiple agent components
Package commonchecks contains shared checks for multiple agent components
compliance
Package compliance implements a specific part of the datadog-agent responsible for scanning host and containers and report various misconfigurations and compliance issues.
Package compliance implements a specific part of the datadog-agent responsible for scanning host and containers and report various misconfigurations and compliance issues.
compliance/aptconfig
Package aptconfig is a compliance submodule that is able to parse the APT tool configuration and export it as a log.
Package aptconfig is a compliance submodule that is able to parse the APT tool configuration and export it as a log.
compliance/dbconfig
Package dbconfig is a compliance submodule that is able to parse and export databases applications configurations.
Package dbconfig is a compliance submodule that is able to parse and export databases applications configurations.
compliance/k8sconfig
Package k8sconfig is a compliance submodule that is able to parse the Kubernetes components configurations and export it as a log.
Package k8sconfig is a compliance submodule that is able to parse the Kubernetes components configurations and export it as a log.
compliance/metrics
Package metrics implements everything related to metrics of the pkg/compliance module.
Package metrics implements everything related to metrics of the pkg/compliance module.
compliance/scap
Package scap implements some internal parsing of the OpenSCAP analysis results.
Package scap implements some internal parsing of the OpenSCAP analysis results.
compliance/tools/k8s_schema_generator
Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
compliance/tools/k8s_types_generator
Package main is the entrypoint of the compliance k8s_types_generator tool that is responsible for generating various configuration types of Kubernetes components.
Package main is the entrypoint of the compliance k8s_types_generator tool that is responsible for generating various configuration types of Kubernetes components.
compliance/utils
Package utils is a compliance internal submodule implementing various utilies.
Package utils is a compliance internal submodule implementing various utilies.
config/autodiscovery
Package autodiscovery contains helper function that return autodiscovery providers from the config and from the environment where the Agent is running.
Package autodiscovery contains helper function that return autodiscovery providers from the config and from the environment where the Agent is running.
config/fetcher
Package fetcher is a collection of high level helpers to pull the configuration from other agent processes
Package fetcher is a collection of high level helpers to pull the configuration from other agent processes
config/fetcher/sysprobe
Package sysprobe is a collection of high level helpers to pull the configuration from system-probe.
Package sysprobe is a collection of high level helpers to pull the configuration from system-probe.
config/legacy
Package legacy contains the logic to convert the old agent configuration
Package legacy contains the logic to convert the old agent configuration
config/settings
Package settings implements runtime settings and profiling
Package settings implements runtime settings and profiling
config/settings/http
Package http implements helpers for the runtime settings HTTP API
Package http implements helpers for the runtime settings HTTP API
containerlifecycle
Package containerlifecycle constains constants used by the container life cycle check.
Package containerlifecycle constains constants used by the container life cycle check.
databasemonitoring/config
Package config contains database-monitoring auto-discovery configuration
Package config contains database-monitoring auto-discovery configuration
diagnose
Package diagnose provides the diagnose functionality for the Agent.
Package diagnose provides the diagnose functionality for the Agent.
diagnose/connectivity
Package connectivity contains logic for connectivity troubleshooting between the Agent and Datadog endpoints.
Package connectivity contains logic for connectivity troubleshooting between the Agent and Datadog endpoints.
diagnose/diagnosis
Package diagnosis contains types used by the "agent diagnose" command.
Package diagnosis contains types used by the "agent diagnose" command.
diagnose/ports
Package ports provides a diagnose suite for the ports used in the agent configuration
Package ports provides a diagnose suite for the ports used in the agent configuration
dynamicinstrumentation/module
Package module provides the dynamic instrumentaiton module.
Package module provides the dynamic instrumentaiton module.
dynamicinstrumentation/testutil/sample
Package sample contains functions that dynamic instrumentation tests against
Package sample contains functions that dynamic instrumentation tests against
dynamicinstrumentation/testutil/sample/sample_service
Sample-service is a simple program with lots of functions to test GoDI against
Sample-service is a simple program with lots of functions to test GoDI against
ebpf
Package ebpf contains general eBPF related types and functions
Package ebpf contains general eBPF related types and functions
ebpf/bytecode
Package bytecode contains types and functions for eBPF bytecode
Package bytecode contains types and functions for eBPF bytecode
ebpf/cgo
Package main is the program to fixup cgo generated types
Package main is the program to fixup cgo generated types
ebpf/ebpftest
Package ebpftest is utilities for tests against eBPF
Package ebpftest is utilities for tests against eBPF
ebpf/prebuilt
Package prebuilt implements prebuilt specific eBPF functionality
Package prebuilt implements prebuilt specific eBPF functionality
ebpf/telemetry
Package telemetry provides types and functions for kernel telemetry collected by eBPF programs.
Package telemetry provides types and functions for kernel telemetry collected by eBPF programs.
ebpf/uprobes
Package uprobes contains methods to help handling the attachment of uprobes to userspace programs
Package uprobes contains methods to help handling the attachment of uprobes to userspace programs
ebpf/verifier
Package verifier is responsible for exposing information the verifier provides for any loaded eBPF program
Package verifier is responsible for exposing information the verifier provides for any loaded eBPF program
eventmonitor
Package eventmonitor holds eventmonitor related files
Package eventmonitor holds eventmonitor related files
eventmonitor/config
Package config holds config related files
Package config holds config related files
eventmonitor/consumers
Package consumers contains consumers that can be readily used by other packages without having to implement the EventConsumerHandler interface manually: - ProcessConsumer (process.go): a consumer of process exec/exit events that can be subscribed to via callbacks
Package consumers contains consumers that can be readily used by other packages without having to implement the EventConsumerHandler interface manually: - ProcessConsumer (process.go): a consumer of process exec/exit events that can be subscribed to via callbacks
eventmonitor/examples
Package examples provides an example of how to use the event monitor module using a basic consumer
Package examples provides an example of how to use the event monitor module using a basic consumer
eventmonitor/testutil
Package testutil provides utilities for using the event monitor in tests
Package testutil provides utilities for using the event monitor in tests
flare
Package flare contains the logic to create a flare archive.
Package flare contains the logic to create a flare archive.
fleet/bootstrapper
Package bootstrapper provides the installer bootstrapper component.
Package bootstrapper provides the installer bootstrapper component.
fleet/daemon
Package daemon implements the fleet long running daemon.
Package daemon implements the fleet long running daemon.
fleet/installer
Package installer provides a package manager that installs and uninstalls packages.
Package installer provides a package manager that installs and uninstalls packages.
fleet/installer/env
Package env provides the environment variables for the installer.
Package env provides the environment variables for the installer.
fleet/installer/errors
Package errors contains errors used by the installer.
Package errors contains errors used by the installer.
fleet/installer/fixtures
Package fixtures contains test datadog package fixtures.
Package fixtures contains test datadog package fixtures.
fleet/installer/oci
Package oci provides a way to interact with Datadog Packages OCIs.
Package oci provides a way to interact with Datadog Packages OCIs.
fleet/installer/packages
Package packages contains the install/upgrades/uninstall logic for packages
Package packages contains the install/upgrades/uninstall logic for packages
fleet/installer/packages/embedded
Package embedded provides embedded files for the installer.
Package embedded provides embedded files for the installer.
fleet/installer/repository
Package repository contains the packaging logic of the updater.
Package repository contains the packaging logic of the updater.
fleet/installer/setup
Package setup contains the different setup scenarios
Package setup contains the different setup scenarios
fleet/installer/setup/common
Package common defines the Setup structure that allows setup scripts to define packages and configurations to install.
Package common defines the Setup structure that allows setup scripts to define packages and configurations to install.
fleet/installer/setup/djm
Package djm contains data-jobs-monitoring installation logic
Package djm contains data-jobs-monitoring installation logic
fleet/installer/tar
Package tar provides utilities to extract tar archives
Package tar provides utilities to extract tar archives
fleet/internal/bootstrap
Package bootstrap provides logic to self-bootstrap the installer.
Package bootstrap provides logic to self-bootstrap the installer.
fleet/internal/cdn
Package cdn provides access to the Remote Config CDN.
Package cdn provides access to the Remote Config CDN.
fleet/internal/db
Package db provides a database to store information about packages
Package db provides a database to store information about packages
fleet/internal/exec
Package exec provides an implementation of the Installer interface that uses the installer binary.
Package exec provides an implementation of the Installer interface that uses the installer binary.
fleet/internal/msi
Package msi contains helper functions to work with msi packages
Package msi contains helper functions to work with msi packages
fleet/internal/paths
Package paths defines commonly used paths throughout the installer
Package paths defines commonly used paths throughout the installer
fleet/internal/winregistry
Package winregistry provides helper functions for interacting with the Windows Registry
Package winregistry provides helper functions for interacting with the Windows Registry
fleet/telemetry
Package telemetry provides the telemetry for fleet components.
Package telemetry provides the telemetry for fleet components.
gpu
Package gpu contains code for monitoring of GPUs from system probe.
Package gpu contains code for monitoring of GPUs from system probe.
gpu/config
Package config provides the GPU monitoring config.
Package config provides the GPU monitoring config.
gpu/cuda
Package cuda provides helpers for CUDA binary parsing
Package cuda provides helpers for CUDA binary parsing
gpu/testutil
Package testutil holds different utilities and stubs for testing
Package testutil holds different utilities and stubs for testing
internaltelemetry
Package internaltelemetry full description in README.md
Package internaltelemetry full description in README.md
kubestatemetrics/builder
Package builder includes a metric store builder.
Package builder includes a metric store builder.
languagedetection
Package languagedetection determines the language that a process is written or compiled in.
Package languagedetection determines the language that a process is written or compiled in.
languagedetection/privileged
Package privileged implements language detection that relies on elevated permissions.
Package privileged implements language detection that relies on elevated permissions.
languagedetection/util
Package util provides util type definitions and helper methods for the language detection client and handler
Package util provides util type definitions and helper methods for the language detection client and handler
logs/internal/decoder/auto_multiline_detection
Package automultilinedetection contains auto multiline detection and aggregation logic.
Package automultilinedetection contains auto multiline detection and aggregation logic.
logs/internal/decoder/auto_multiline_detection/tokens
Package tokens contains the token definitions for the tokenizer.
Package tokens contains the token definitions for the tokenizer.
logs/internal/framer
Package framer supports efficiently breaking chunks of binary data into frames.
Package framer supports efficiently breaking chunks of binary data into frames.
logs/internal/parsers
Package parsers supports transforming raw log "lines" into messages with some associated metadata (timestamp, severity, etc.).
Package parsers supports transforming raw log "lines" into messages with some associated metadata (timestamp, severity, etc.).
logs/internal/parsers/dockerfile
Package dockerfile implements a Parser for the JSON-per-line format found in Docker logfiles.
Package dockerfile implements a Parser for the JSON-per-line format found in Docker logfiles.
logs/internal/parsers/dockerstream
Package dockerstream parses the log format output by Docker when streaming via its API.
Package dockerstream parses the log format output by Docker when streaming via its API.
logs/internal/parsers/encodedtext
Package encodedtext parses plain text messages that are in encodings other than utf-8.
Package encodedtext parses plain text messages that are in encodings other than utf-8.
logs/internal/parsers/integrations
Package integrations implements a Parser for integrations logs files.
Package integrations implements a Parser for integrations logs files.
logs/internal/parsers/noop
Package noop implements a parser that simply returns its input unchanged.
Package noop implements a parser that simply returns its input unchanged.
logs/launchers/integration
Package integration creates a launcher to track logs from integrations
Package integration creates a launcher to track logs from integrations
logs/launchers/windowsevent
Package windowsevent is not supported on non-windows platforms
Package windowsevent is not supported on non-windows platforms
logs/util/windowsevent
Package windowsevent contains utilities to transform Windows Event Log XML messages into structured messages for Datadog Logs.
Package windowsevent contains utilities to transform Windows Event Log XML messages into structured messages for Datadog Logs.
network
Package network contains logic and types for network tracing
Package network contains logic and types for network tracing
network/config
Package config implements network tracing configuration
Package config implements network tracing configuration
network/config/sysctl
Package sysctl implements reading of system parameters such as system limits
Package sysctl implements reading of system parameters such as system limits
network/dns
Package dns traces DNS activity and caches DNS lookups for reverse DNS capability
Package dns traces DNS activity and caches DNS lookups for reverse DNS capability
network/ebpf
Package ebpf implements tracing network events with eBPF
Package ebpf implements tracing network events with eBPF
network/encoding
Package encoding contains two subpackages marshal and unmarshal.
Package encoding contains two subpackages marshal and unmarshal.
network/encoding/marshal
Package marshal implements the marshaling side of network encoding
Package marshal implements the marshaling side of network encoding
network/encoding/unmarshal
Package unmarshal implements the unmarshalling side of network encoding
Package unmarshal implements the unmarshalling side of network encoding
network/events
Package events handles process events
Package events handles process events
network/filter
Package filter exposes interfaces and implementations for packet capture
Package filter exposes interfaces and implementations for packet capture
network/go/asmscan
Package asmscan provides functions for scanning the machine code of functions.
Package asmscan provides functions for scanning the machine code of functions.
network/go/bininspect
Package bininspect provides tools to inspect a Go binary.
Package bininspect provides tools to inspect a Go binary.
network/go/binversion
Package binversion provides access to information embedded in a Go binary about how it was built.
Package binversion provides access to information embedded in a Go binary about how it was built.
network/go/dwarfutils
Package dwarfutils provides utilities for working with DWARF debug information.
Package dwarfutils provides utilities for working with DWARF debug information.
network/go/dwarfutils/locexpr
Package locexpr provides a function to statically execute a DWARF location expression.
Package locexpr provides a function to statically execute a DWARF location expression.
network/go/goid
Package goid provides a function to get the current goroutine ID.
Package goid provides a function to get the current goroutine ID.
network/go/goid/internal
Package main is responsible for extracting Go type information from DWARF data across multiple Go versions.
Package main is responsible for extracting Go type information from DWARF data across multiple Go versions.
network/go/goid/internal/testprogram
Package main holds main related files
Package main holds main related files
network/go/goversion
Package goversion provides a wrapper around the `GoVersion` type from the delve debugger
Package goversion provides a wrapper around the `GoVersion` type from the delve debugger
network/go/lutgen
Package lutgen provides tools to generate lookup tables for Go binaries.
Package lutgen provides tools to generate lookup tables for Go binaries.
network/go/rungo
Package rungo provides tools to run the Go toolchain.
Package rungo provides tools to run the Go toolchain.
network/go/rungo/matrix
Package matrix provides a utility for running a single Go command
Package matrix provides a utility for running a single Go command
network/netlink
Package netlink implements network connection tracking.
Package netlink implements network connection tracking.
network/netlink/testutil
Package testutil contains helper functions used for testing conntrack
Package testutil contains helper functions used for testing conntrack
network/nettop
Package main - single file executable
Package main - single file executable
network/protocols
Package protocols provides the implementation of the network tracer protocols
Package protocols provides the implementation of the network tracer protocols
network/protocols/amqp
Package amqp provides a simple wrapper around 3rd party amqp client.
Package amqp provides a simple wrapper around 3rd party amqp client.
network/protocols/http
Package http contains the userspace portion of USM's HTTP monitoring code
Package http contains the userspace portion of USM's HTTP monitoring code
network/protocols/http/debugging
Package debugging provides a debugging view of the HTTP protocol.
Package debugging provides a debugging view of the HTTP protocol.
network/protocols/http/gotls/lookup
Package lookup provides a lookup table for the protocol package.
Package lookup provides a lookup table for the protocol package.
network/protocols/http/gotls/lookup/internal/testprogram
Package main provides a test program for generating lookup tables for TLS types
Package main provides a test program for generating lookup tables for TLS types
network/protocols/http/testutil
Package testutil provides utilities for testing the HTTP protocol.
Package testutil provides utilities for testing the HTTP protocol.
network/protocols/http2
Package http2 provides a HTTP/2 implementation for the network package for supporting HTTP/2 and gRPC monitoring with USM.
Package http2 provides a HTTP/2 implementation for the network package for supporting HTTP/2 and gRPC monitoring with USM.
network/protocols/kafka/debugging
Package debugging provides debug-friendly representations of internal data structures
Package debugging provides debug-friendly representations of internal data structures
network/protocols/mongo
Package mongo provides a simple wrapper around 3rd party mongo client.
Package mongo provides a simple wrapper around 3rd party mongo client.
network/protocols/mysql
Package mysql provides a MySQL client to interact with a MySQL server.
Package mysql provides a MySQL client to interact with a MySQL server.
network/protocols/postgres/debugging
Package debugging provides debug-friendly representations of internal data structures
Package debugging provides debug-friendly representations of internal data structures
network/protocols/redis/debugging
Package debugging provides debug-friendly representation of internal data structures
Package debugging provides debug-friendly representation of internal data structures
network/protocols/telemetry
Package telemetry provides a way to collect metrics from eBPF programs.
Package telemetry provides a way to collect metrics from eBPF programs.
network/protocols/testutil
Package testutil provides general utilities for protocols UTs.
Package testutil provides general utilities for protocols UTs.
network/protocols/tls/gotls/testutil
Package testutil provides utilities for testing the TLS package.
Package testutil provides utilities for testing the TLS package.
network/protocols/tls/gotls/testutil/gotls_client
Package main is a simple client for the gotls_server.
Package main is a simple client for the gotls_server.
network/protocols/tls/gotls/testutil/gotls_server
Package main is a simple client for the gotls_server.
Package main is a simple client for the gotls_server.
network/slice
Package slice implements helpers for slice operations
Package slice implements helpers for slice operations
network/testutil
Package testutil contains helper functions used in network tests
Package testutil contains helper functions used in network tests
network/tracer
Package tracer implements the functionality of the network tracer
Package tracer implements the functionality of the network tracer
network/tracer/connection/ebpfless
Package ebpfless contains supporting code for the ebpfless tracer
Package ebpfless contains supporting code for the ebpfless tracer
network/tracer/testutil/proxy/external_unix_proxy_server
Package main provides a unix transparent proxy server that can be used for testing.
Package main provides a unix transparent proxy server that can be used for testing.
network/types
Package types implements the definition for network connection tuples
Package types implements the definition for network connection tuples
network/usm/config
Package config provides helpers for USM configuration
Package config provides helpers for USM configuration
network/usm/consts
Package consts contains constants used by the USM package.
Package consts contains constants used by the USM package.
network/usm/sharedlibraries
Package sharedlibraries contains implementation for monitoring of shared libraries opened by other programs
Package sharedlibraries contains implementation for monitoring of shared libraries opened by other programs
network/usm/sharedlibraries/testutil/fmapper
Package main is used for testing purposes and it essentially maps into memory
Package main is used for testing purposes and it essentially maps into memory
network/usm/state
Package state provides the state of the USM monitor.
Package state provides the state of the USM monitor.
network/usm/testutil
Package testutil provides utilities for testing USM.
Package testutil provides utilities for testing USM.
network/usm/testutil/grpc
Package grpc provides a gRPC client that fits the gRPC server.
Package grpc provides a gRPC client that fits the gRPC server.
network/usm/testutil/grpc/grpc_external_server
Package main provides a simple gRPC server that can be used for testing.
Package main provides a simple gRPC server that can be used for testing.
network/usm/testutil/prefetch_file
Package main is a simple utility to prefetch files into the page cache.
Package main is a simple utility to prefetch files into the page cache.
network/usm/utils
Package utils contains common code shared across the USM codebase
Package utils contains common code shared across the USM codebase
networkdevice/diagnoses
Package diagnoses implements the diagnosis collection for NDM resources
Package diagnoses implements the diagnosis collection for NDM resources
networkdevice/metadata
Package metadata defines types for describing data about a device.
Package metadata defines types for describing data about a device.
networkdevice/pinger
Package pinger implements ICMP ping functionality for the agent
Package pinger implements ICMP ping functionality for the agent
networkdevice/utils
Package utils contains utils function for ndm features
Package utils contains utils function for ndm features
networkpath/metricsender
Package metricsender holds the interface used to send Metrics with Agent Sender and Statsd sender
Package metricsender holds the interface used to send Metrics with Agent Sender and Statsd sender
networkpath/payload
Package payload contains Network Path payload
Package payload contains Network Path payload
networkpath/telemetry
Package telemetry handles Network Path telemetry
Package telemetry handles Network Path telemetry
networkpath/traceroute
Package traceroute adds traceroute functionality to the agent
Package traceroute adds traceroute functionality to the agent
networkpath/traceroute/common
Package common contains common functionality for both TCP and UDP traceroute implementations
Package common contains common functionality for both TCP and UDP traceroute implementations
networkpath/traceroute/config
Package config is the configuration for the traceroute functionality
Package config is the configuration for the traceroute functionality
networkpath/traceroute/runner
Package runner is the functionality for actually performing traceroutes
Package runner is the functionality for actually performing traceroutes
networkpath/traceroute/tcp
Package tcp adds a TCP traceroute implementation to the agent
Package tcp adds a TCP traceroute implementation to the agent
networkpath/traceroute/testutils
Package testutils contains utilities for testing traceroute code
Package testutils contains utilities for testing traceroute code
orchestrator
Package orchestrator provides functions and stats for container orchestrators
Package orchestrator provides functions and stats for container orchestrators
pidfile
Package pidfile implements functions to interact with the pid file
Package pidfile implements functions to interact with the pid file
process/metadata/parser/java
Package javaparser contains functions to autodetect service name for java applications
Package javaparser contains functions to autodetect service name for java applications
process/metadata/parser/nodejs
Package nodejsparser wraps functions to guess service name for node applications
Package nodejsparser wraps functions to guess service name for node applications
process/monitor
Package monitor represents a wrapper to netlink, which gives us the ability to monitor process events like Exec and Exit, and activate the registered callbacks for the relevant events
Package monitor represents a wrapper to netlink, which gives us the ability to monitor process events like Exec and Exit, and activate the registered callbacks for the relevant events
process/net
Package net provides local access to system probe
Package net provides local access to system probe
process/util
Package util contains helper functions for processes, IP addresses, env variables, etc.
Package util contains helper functions for processes, IP addresses, env variables, etc.
process/util/containers/mocks
Package mock_containers is a generated GoMock package.
Package mock_containers is a generated GoMock package.
runtime
Package runtime defines limits for the Go runtime
Package runtime defines limits for the Go runtime
sbom
Package sbom holds sbom related files
Package sbom holds sbom related files
sbom/collectors
Package collectors holds collectors related files
Package collectors holds collectors related files
sbom/collectors/crio
Package crio holds crio related files
Package crio holds crio related files
sbom/collectors/docker
Package docker holds docker related files
Package docker holds docker related files
sbom/collectors/host
Package host holds host related files
Package host holds host related files
sbom/scanner
Package scanner holds scanner related files
Package scanner holds scanner related files
sbom/telemetry
Package telemetry holds telemetry related files
Package telemetry holds telemetry related files
sbom/types
Package types holds sbom related types
Package types holds sbom related types
security/agent
Package agent holds agent related files
Package agent holds agent related files
security/common
Package common holds common related files
Package common holds common related files
security/common/usergrouputils
Package usergroup holds usergroup related files
Package usergroup holds usergroup related files
security/config
Package config holds config related files
Package config holds config related files
security/ebpf
Package ebpf holds ebpf related files
Package ebpf holds ebpf related files
security/ebpf/kernel
Package kernel holds kernel related files
Package kernel holds kernel related files
security/ebpf/probes
Package probes holds probes related files
Package probes holds probes related files
security/ebpf/probes/rawpacket
Package rawpacket holds rawpacket related files
Package rawpacket holds rawpacket related files
security/events
Package events holds events related files
Package events holds events related files
security/generators/backend_doc
Package main holds main related files
Package main holds main related files
security/generators/event_copy
Package main holds main related files
Package main holds main related files
security/generators/schemas/policy
Package main holds main related files
Package main holds main related files
security/metrics
Package metrics holds metrics related files
Package metrics holds metrics related files
security/module
Package module holds module related files
Package module holds module related files
security/probe
Package probe holds probe related files
Package probe holds probe related files
security/probe/config
Package config holds config related files
Package config holds config related files
security/probe/constantfetch
Package constantfetch holds constantfetch related files
Package constantfetch holds constantfetch related files
security/probe/erpc
Package erpc holds erpc related files
Package erpc holds erpc related files
security/probe/eventstream
Package eventstream holds eventstream related files
Package eventstream holds eventstream related files
security/probe/eventstream/reorderer
Package reorderer holds reorderer related files
Package reorderer holds reorderer related files
security/probe/eventstream/ringbuffer
Package ringbuffer holds ringbuffer related files
Package ringbuffer holds ringbuffer related files
security/probe/kfilters
Package kfilters holds kfilters related files
Package kfilters holds kfilters related files
security/probe/managerhelper
Package managerhelper holds managerhelper related files
Package managerhelper holds managerhelper related files
security/probe/monitors/approver
Package approver holds approver related files
Package approver holds approver related files
security/probe/monitors/cgroups
Package cgroups holds cgroups related files
Package cgroups holds cgroups related files
security/probe/monitors/discarder
Package discarder holds discarder related files
Package discarder holds discarder related files
security/probe/monitors/runtime
Package runtime holds runtime related files
Package runtime holds runtime related files
security/probe/monitors/syscalls
Package syscalls holds syscalls related files
Package syscalls holds syscalls related files
security/probe/selftests
Package selftests holds selftests related files
Package selftests holds selftests related files
security/process_list
Package processlist holds process context
Package processlist holds process context
security/process_list/activity_tree
Package activitytree holds activitytree related files
Package activitytree holds activitytree related files
security/process_list/process_resolver
Package processresolver holds processresolver related files
Package processresolver holds processresolver related files
security/proto/api
Package api holds api related files
Package api holds api related files
security/proto/ebpfless
Package ebpfless holds msgpack messages
Package ebpfless holds msgpack messages
security/ptracer
Package ptracer holds the start command of CWS injector
Package ptracer holds the start command of CWS injector
security/rconfig
Package rconfig holds rconfig related files
Package rconfig holds rconfig related files
security/reporter
Package reporter holds reporter related files
Package reporter holds reporter related files
security/resolvers
Package resolvers holds resolvers related files
Package resolvers holds resolvers related files
security/resolvers/cgroup
Package cgroup holds cgroup related files
Package cgroup holds cgroup related files
security/resolvers/cgroup/model
Package model holds model related files
Package model holds model related files
security/resolvers/container
Package container holds container related files
Package container holds container related files
security/resolvers/dentry
Package dentry holds dentry related files
Package dentry holds dentry related files
security/resolvers/envvars
Package envvars holds envvars related files
Package envvars holds envvars related files
security/resolvers/hash
Package hash holds hash related files
Package hash holds hash related files
security/resolvers/mount
Package mount holds mount related files
Package mount holds mount related files
security/resolvers/netns
Package netns holds netns related files
Package netns holds netns related files
security/resolvers/path
Package path holds path related files
Package path holds path related files
security/resolvers/process
Package process holds process related files
Package process holds process related files
security/resolvers/sbom
Package sbom holds sbom related files
Package sbom holds sbom related files
security/resolvers/securitydescriptors
Package securitydescriptors holds security descriptors related files
Package securitydescriptors holds security descriptors related files
security/resolvers/selinux
Package selinux holds selinux related files
Package selinux holds selinux related files
security/resolvers/syscallctx
Package syscallctx holds syscall context related files
Package syscallctx holds syscall context related files
security/resolvers/tags
Package tags holds tags related files
Package tags holds tags related files
security/resolvers/tc
Package tc holds tc related files
Package tc holds tc related files
security/resolvers/usergroup
Package usergroup holds usergroup related files
Package usergroup holds usergroup related files
security/resolvers/usersessions
Package usersessions holds model related to the user sessions resolver
Package usersessions holds model related to the user sessions resolver
security/rules
Package rules holds rules related files
Package rules holds rules related files
security/rules/autosuppression
Package autosuppression holds auto suppression related files
Package autosuppression holds auto suppression related files
security/rules/bundled
Package bundled contains bundled rules
Package bundled contains bundled rules
security/rules/filtermodel
Package filtermodel holds rules related files
Package filtermodel holds rules related files
security/rules/monitor
Package monitor holds rules related files
Package monitor holds rules related files
security/seclog
Package seclog holds seclog related files
Package seclog holds seclog related files
security/security_profile
Package securityprofile holds securityprofile related files
Package securityprofile holds securityprofile related files
security/security_profile/activity_tree
Package activitytree holds activitytree related files
Package activitytree holds activitytree related files
security/security_profile/activity_tree/metadata
Package metadata holds metadata related files
Package metadata holds metadata related files
security/security_profile/dump
Package dump holds dump related files
Package dump holds dump related files
security/security_profile/profile
Package profile holds profile related files
Package profile holds profile related files
security/serializers
Package serializers defines functions aiming to serialize events
Package serializers defines functions aiming to serialize events
security/telemetry
Package telemetry holds telemetry related files
Package telemetry holds telemetry related files
security/tests
Package tests holds tests related files
Package tests holds tests related files
security/tests/statsdclient
Package statsdclient holds statsdclient related files
Package statsdclient holds statsdclient related files
security/tests/testutils
Package testutils holds test utility functions
Package testutils holds test utility functions
security/utils
Package utils holds utils related files
Package utils holds utils related files
serverless/appsec
Package appsec provides a simple Application Security Monitoring API for serverless.
Package appsec provides a simple Application Security Monitoring API for serverless.
serverless/appsec/config
Package config defines configuration utilities for appsec
Package config defines configuration utilities for appsec
serverless/appsec/httpsec
Package httpsec defines is the HTTP instrumentation API and contract for AppSec.
Package httpsec defines is the HTTP instrumentation API and contract for AppSec.
serverless/debug
Package debug holds logic around debug information in the Lambda Extension
Package debug holds logic around debug information in the Lambda Extension
serverless/remoteconfig
Package remoteconfig provides a remote configuration service constructor for serverless
Package remoteconfig provides a remote configuration service constructor for serverless
serverless/streamlogs
Package streamlogs package is responsible for stream-logs on the serverless environment.
Package streamlogs package is responsible for stream-logs on the serverless environment.
serverless/trace/propagation
Package propagation manages propagation of trace context headers.
Package propagation manages propagation of trace context headers.
serverless/trigger/events
Package events provides a series of drop in replacements for "github.com/aws/aws-lambda-go/events".
Package events provides a series of drop in replacements for "github.com/aws/aws-lambda-go/events".
snmp/gosnmplib
Package gosnmplib provides helpers to go with gosnmp.
Package gosnmplib provides helpers to go with gosnmp.
snmp/snmpparse
Package snmpparse extracts SNMP configurations from agent config data.
Package snmpparse extracts SNMP configurations from agent config data.
status
Package status implements the status of the agent
Package status implements the status of the agent
status/clusteragent
Package clusteragent fetch information about the cluster agent
Package clusteragent fetch information about the cluster agent
status/collector
Package collector fetch information needed to render the 'collector' section of the status page.
Package collector fetch information needed to render the 'collector' section of the status page.
status/endpoints
Package endpoints fetch information needed to render the 'endpoints' section of the status page.
Package endpoints fetch information needed to render the 'endpoints' section of the status page.
status/httpproxy
Package httpproxy implements the status provider interface
Package httpproxy implements the status provider interface
status/jmx
Package jmx allows to set and collect information about JMX check
Package jmx allows to set and collect information about JMX check
status/render
Package render has all the formating options for status output
Package render has all the formating options for status output
status/systemprobe
Package systemprobe fetch information about the system probe
Package systemprobe fetch information about the system probe
tagger
Package tagger provides some shared logic about the tagger
Package tagger provides some shared logic about the tagger
util
Package util provides various functions
Package util provides various functions
util/aggregatingqueue
Package queue implements a generic queue.
Package queue implements a generic queue.
util/archive
Package archive provides functions to archive and unarchive files.
Package archive provides functions to archive and unarchive files.
util/atomicstats
Package atomicstats provides support for "stats" structs containing atomic values.
Package atomicstats provides support for "stats" structs containing atomic values.
util/cachedfetch
Package cachedfetch provides a read-through cache for fetched values.
Package cachedfetch provides a read-through cache for fetched values.
util/cli
Package cli provides helper functions around command line interface
Package cli provides helper functions around command line interface
util/cloudproviders
Package cloudproviders provides utilities to detect the cloud provider.
Package cloudproviders provides utilities to detect the cloud provider.
util/cloudproviders/alibaba
Package alibaba provides utilities to detect the Alibaba cloud provider.
Package alibaba provides utilities to detect the Alibaba cloud provider.
util/cloudproviders/azure
Package azure provides utilities to detect Azure cloud provider.
Package azure provides utilities to detect Azure cloud provider.
util/cloudproviders/gce
Package gce provides utilities to detect gce cloud provider.
Package gce provides utilities to detect gce cloud provider.
util/cloudproviders/ibm
Package ibm provides utilities to detect ibm cloud provider.
Package ibm provides utilities to detect ibm cloud provider.
util/cloudproviders/kubernetes
Package kubernetes provides utilities to detect cloud provider from kubernetes.
Package kubernetes provides utilities to detect cloud provider from kubernetes.
util/cloudproviders/oracle
Package oracle provides utilities to detect oracle cloud provider.
Package oracle provides utilities to detect oracle cloud provider.
util/cloudproviders/tencent
Package tencent provides utilities to detect tencent cloud provider.
Package tencent provides utilities to detect tencent cloud provider.
util/clusteragent
Package clusteragent provides clients for the APIs exposed by the Cluster Agent and the Cluster Check Runners.
Package clusteragent provides clients for the APIs exposed by the Cluster Agent and the Cluster Check Runners.
util/containers
Package containers implements the functionality needed to fetch metrics from the different runtimes supported (Docker, containerd, etc.).
Package containers implements the functionality needed to fetch metrics from the different runtimes supported (Docker, containerd, etc.).
util/containers/metadata
Package containers provides metadata for containers.
Package containers provides metadata for containers.
util/containers/metrics
Package metrics registers all the different collectors for container-related metrics.
Package metrics registers all the different collectors for container-related metrics.
util/containers/metrics/containerd
Package containerd implements the containerd metrics collector
Package containerd implements the containerd metrics collector
util/containers/metrics/cri
Package cri implements the CRI metrics collector.
Package cri implements the CRI metrics collector.
util/containers/metrics/docker
Package docker implements the Docker metrics collector.
Package docker implements the Docker metrics collector.
util/containers/metrics/ecsfargate
Package ecsfargate implements the ECS Fargate metrics collector.
Package ecsfargate implements the ECS Fargate metrics collector.
util/containers/metrics/kubelet
Package kubelet implements the Kubelet metrics collector.
Package kubelet implements the Kubelet metrics collector.
util/containers/metrics/provider
Package provider defines the Provider interface which allows to get metrics collectors for the different container runtimes supported (Docker, containerd, etc.).
Package provider defines the Provider interface which allows to get metrics collectors for the different container runtimes supported (Docker, containerd, etc.).
util/containers/metrics/system
Package system implements the system metrics collector, which is based on Linux cgroups.
Package system implements the system metrics collector, which is based on Linux cgroups.
util/coredump
Package coredump provides utils to enable core dumps and set core dump size limit
Package coredump provides utils to enable core dumps and set core dump size limit
util/crashreport
Package crashreport provides shared helpers for recording crash detection state
Package crashreport provides shared helpers for recording crash detection state
util/crio
Package crio provides a crio client.
Package crio provides a crio client.
util/dmi
Package dmi provides helper functions to interact with DMI
Package dmi provides helper functions to interact with DMI
util/ec2
Package ec2 provides information when running in ec2
Package ec2 provides information when running in ec2
util/ecs
Package ecs provides metadata collection when the Agent runs on the ECS platform
Package ecs provides metadata collection when the Agent runs on the ECS platform
util/ecs/common
Package common provides common functionality for the different ECS clients.
Package common provides common functionality for the different ECS clients.
util/ecs/metadata
Package metadata provides clients for Metadata APIs exposed by the ECS agent.
Package metadata provides clients for Metadata APIs exposed by the ECS agent.
util/ecs/metadata/testutil
Package testutil implements a fake ECS client to be used in tests.
Package testutil implements a fake ECS client to be used in tests.
util/fargate
Package fargate implements functions to interact with fargate
Package fargate implements functions to interact with fargate
util/funcs
Package funcs provides utilities for functions, such as caching and memoization.
Package funcs provides utilities for functions, such as caching and memoization.
util/gpu
Package gpu provides utilities for interacting with GPU resources.
Package gpu provides utilities for interacting with GPU resources.
util/hostname
Package hostname provides utilities to detect the hostname of the host.
Package hostname provides utilities to detect the hostname of the host.
util/input
Package input implements helper functions to communicate with the user via CLI
Package input implements helper functions to communicate with the user via CLI
util/installinfo
Package installinfo offers helpers to interact with the 'install_info' file.
Package installinfo offers helpers to interact with the 'install_info' file.
util/intern
Package intern lets you make smaller comparable values by boxing a larger comparable value (such as a 16 byte string header) down into a globally unique 8 byte pointer.
Package intern lets you make smaller comparable values by boxing a larger comparable value (such as a 16 byte string header) down into a globally unique 8 byte pointer.
util/jsonquery
Package jsonquery interacts with jq queries
Package jsonquery interacts with jq queries
util/kernel
Package kernel is utilities for the Linux kernel
Package kernel is utilities for the Linux kernel
util/ktime
Package ktime holds time related files
Package ktime holds time related files
util/kubelet
Package kubelet provides utilities to interact with kubelet.
Package kubelet provides utilities to interact with kubelet.
util/kubernetes
Package kubernetes provides several helpers to interact with a Kubernetes cluster.
Package kubernetes provides several helpers to interact with a Kubernetes cluster.
util/kubernetes/apiserver
Package apiserver provides an API client for the Kubernetes API server.
Package apiserver provides an API client for the Kubernetes API server.
util/kubernetes/apiserver/controllers
Package controllers is responsible for running the Kubernetes controllers needed by the Datadog Cluster Agent
Package controllers is responsible for running the Kubernetes controllers needed by the Datadog Cluster Agent
util/kubernetes/apiserver/leaderelection
Package leaderelection provides functions related with the leader election mechanism offered in Kubernetes.
Package leaderelection provides functions related with the leader election mechanism offered in Kubernetes.
util/kubernetes/apiserver/leaderelection/metrics
Package metrics provides telemetry to know who's the leader in Kubernetes objects that implement the leader/follower pattern.
Package metrics provides telemetry to know who's the leader in Kubernetes objects that implement the leader/follower pattern.
util/kubernetes/clustername
Package clustername provides helpers to get a Kubernetes cluster name.
Package clustername provides helpers to get a Kubernetes cluster name.
util/kubernetes/hostinfo
Package hostinfo provides functions to get annotations, labels, etc.
Package hostinfo provides functions to get annotations, labels, etc.
util/kubernetes/kubelet
Package kubelet provides a client for the Kubelet API.
Package kubelet provides a client for the Kubelet API.
util/lsof
Package lsof provides a way to list open files for a given process
Package lsof provides a way to list open files for a given process
util/pdhutil
Package pdhutil provides the Windows PDH API
Package pdhutil provides the Windows PDH API
util/podman
Package podman implements a client for the Podman DB (BoltDB).
Package podman implements a client for the Podman DB (BoltDB).
util/port
Package port provides utilities around host port information.
Package port provides utilities around host port information.
util/port/portlist
Package portlist contains code that checks what ports are open and listening on the current machine.
Package portlist contains code that checks what ports are open and listening on the current machine.
util/profiling
Package profiling interacts with internal profiling
Package profiling interacts with internal profiling
util/prometheus
Package prometheus provides utility functions to deal with prometheus endpoints
Package prometheus provides utility functions to deal with prometheus endpoints
util/retry
Package retry implements a configurable retry mechanism that can be embedded in any class needing a retry-on-error system.
Package retry implements a configurable retry mechanism that can be embedded in any class needing a retry-on-error system.
util/safeelf
Package safeelf provides safe (from panics) wrappers around ELF parsing
Package safeelf provides safe (from panics) wrappers around ELF parsing
util/strings
Package strings contains utilities for working with strings in Go
Package strings contains utilities for working with strings in Go
util/subscriptions
Package subscriptions provides support for managing subscriptions between components.
Package subscriptions provides support for managing subscriptions between components.
util/sync
Package sync is utilities for synchronization
Package sync is utilities for synchronization
util/tmplvar
Package tmplvar provides functions to interact with template variables
Package tmplvar provides functions to interact with template variables
util/trie
Package trie provides a SuffixTrie data structure that can be used to index data by suffixes of strings.
Package trie provides a SuffixTrie data structure that can be used to index data by suffixes of strings.
util/trivy
Package trivy implement a simple overlayfs like filesystem to be able to scan through layered filesystems.
Package trivy implement a simple overlayfs like filesystem to be able to scan through layered filesystems.
util/workqueue/telemetry
Package telemetry is a utility package that provides helper methods for creating and registering metrics for kubernetes workqueue.
Package telemetry is a utility package that provides helper methods for creating and registering metrics for kubernetes workqueue.
util/xc
Package xc provides a function to get system clock frequency
Package xc provides a function to get system clock frequency
windowsdriver/driver
Package driver implements the driver package
Package driver implements the driver package
api Module
conf Module
config/env Module
config/logs Module
config/mock Module
config/model Module
config/remote Module
config/setup Module
config/utils Module
errors Module
gohai Module
logs/auditor Module
logs/client Module
logs/message Module
logs/metrics Module
logs/pipeline Module
logs/sds Module
logs/sender Module
logs/sources Module
metrics Module
obfuscate Module
otlp/model Module
proto Module
quantile Module
security/secl Module
serializer Module
status/health Module
tagger/types Module
tagset Module
telemetry Module
trace Module
trace/export Module
trace/pb Module
util/backoff Module
util/buf Module
util/cache Module
util/cgroups Module
util/common Module
util/flavor Module
util/fxutil Module
util/grpc Module
util/http Module
util/json Module
util/log Module
util/option Module
util/optional Module
util/pointer Module
util/scrubber Module
util/sort Module
util/system Module
util/tagger Module
util/testutil Module
util/uuid Module
util/winutil Module
version Module
rtloader
test
integration/utils
Package utils provides utility functions
Package utils provides utility functions
fakeintake Module
new-e2e Module
otel Module
tools
NamedPipeCmd
Package namedpipecmd is the entrypoint for the NamedPipeCmd tool
Package namedpipecmd is the entrypoint for the NamedPipeCmd tool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL