 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package core implements the "core" bundle, providing services common to all agent flavors and binaries.
The constituent components serve as utilities and are mostly independent of one another. Other components should depend on any components they need.
This bundle does not depend on any other bundles.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BundleParams ¶
type BundleParams struct {
	ConfigParams
	SysprobeConfigParams
	LogParams
}
    BundleParams defines the parameters for this bundle.
Logs-related parameters are implemented as unexported fields containing callbacks. These fields can be set with the `LogXxx()` methods, which return the updated BundleParams. One of `logimpl.ForOneShot` or `logimpl.ForDaemon` must be called.
type ConfigParams ¶
ConfigParams defines the parameters of the config component
type SysprobeConfigParams ¶
type SysprobeConfigParams = sysprobeconfigimpl.Params
SysprobeConfigParams defines the parameters of the system-probe config component
       Directories
      ¶
      Directories
      ¶
    
    | Path | Synopsis | 
|---|---|
| agenttelemetry
       | |
| 
          
            def
            module
            
          
          
         | |
| 
          
            fx
            module
            
          
          
         | |
| 
          
            impl
            module
            
          
          
         | |
| Package autodiscovery provides the autodiscovery component for the Datadog Agent | Package autodiscovery provides the autodiscovery component for the Datadog Agent | 
| 
          
            autodiscoveryimpl
            
            
          
           Package autodiscoveryimpl implements the agent's autodiscovery mechanism. | Package autodiscoveryimpl implements the agent's autodiscovery mechanism. | 
| 
          
            common/types
            
            
          
           Package types implements common structs used in the Autodiscovery code. | Package types implements common structs used in the Autodiscovery code. | 
| 
          
            common/utils
            
            
          
           Package utils implements helper methods used in the Autodiscovery code. | Package utils implements helper methods used in the Autodiscovery code. | 
| 
          
            configresolver
            
            
          
           Package configresolver resolves configuration templates against a given service by replacing template variables with corresponding data from the service. | Package configresolver resolves configuration templates against a given service by replacing template variables with corresponding data from the service. | 
| 
          
            integration
            
            
          
           Package integration defines types representing an integration configuration, which can be used by several components of the agent to configure checks or log collectors, for example. | Package integration defines types representing an integration configuration, which can be used by several components of the agent to configure checks or log collectors, for example. | 
| 
          
            listeners
            
            
          
           Package listeners is a wrapper that registers the available autodiscovery listerners. | Package listeners is a wrapper that registers the available autodiscovery listerners. | 
| 
          
            noopimpl
            
            
          
           Package noopautoconfig provides a noop implementation for the autodiscovery component | Package noopautoconfig provides a noop implementation for the autodiscovery component | 
| 
          
            proto
            
            
          
           Package proto provides autodiscovery proto util functions | Package proto provides autodiscovery proto util functions | 
| 
          
            providers
            
            
          
           Package providers defines the ConfigProvider interface and includes implementations that collect check configurations from multiple sources (such as containers, files, etc.). | Package providers defines the ConfigProvider interface and includes implementations that collect check configurations from multiple sources (such as containers, files, etc.). | 
| 
          
            providers/datastreams
            
            
          
           Package datastreams contains logic to configure the kafka_consumer integration via remote configuration to fetch messages from Kafka | Package datastreams contains logic to configure the kafka_consumer integration via remote configuration to fetch messages from Kafka | 
| 
          
            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.). | 
| 
          
            providers/types
            
            
          
           Package types defines the types used by the autodiscovery providers | Package types defines the types used by the autodiscovery providers | 
| 
          
            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`. | 
| 
          
            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. | 
| 
          
            stream
            
            
          
           Package stream provides the autodiscovery config streaming logic | Package stream provides the autodiscovery config streaming logic | 
| 
          
            telemetry
            
            
          
           Package telemetry defines the Autodiscovery telemetry metrics. | Package telemetry defines the Autodiscovery telemetry metrics. | 
| config
            module
           | |
| configstream
       | |
| 
          
            def
            
            
          
           Package configstream implements a component to handle streaming configuration events to subscribers. | Package configstream implements a component to handle streaming configuration events to subscribers. | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the configstream component | Package fx provides the fx module for the configstream component | 
| 
          
            impl
            
            
          
           Package configstreamimpl implements the configstream component interface | Package configstreamimpl implements the configstream component interface | 
| 
          
            server
            
            
          
           Package server implements the transport-specific logic for the configstream component. | Package server implements the transport-specific logic for the configstream component. | 
| configsync
            module
           | |
| diagnose
       | |
| 
          
            def
            
            
          
           Package diagnose provides the diagnose suite for the agent. | Package diagnose provides the diagnose suite for the agent. | 
| 
          
            format
            
            
          
           Package format provides the output format for the diagnose suite. | Package format provides the output format for the diagnose suite. | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the diagnose component | Package fx provides the fx module for the diagnose component | 
| 
          
            impl
            
            
          
           Package diagnoseimpl implements the diagnose component interface | Package diagnoseimpl implements the diagnose component interface | 
| 
          
            local
            
            
          
           Package local contains the code to run local diagnose. | Package local contains the code to run local diagnose. | 
| Package flare implements a component to generate flares from the agent. | Package flare implements a component to generate flares from the agent. | 
| 
          
            helpers
            
            
          
           Package helpers contains helpers for the flare component. | Package helpers contains helpers for the flare component. | 
| 
          
            builder
            module
            
          
          
         | |
| 
          
            types
            module
            
          
          
         | |
| Package gui provides the GUI server component for the Datadog Agent. | Package gui provides the GUI server component for the Datadog Agent. | 
| 
          
            guiimpl
            
            
          
           Package guiimpl implements the component gui | Package guiimpl implements the component gui | 
| healthprobe
       | |
| 
          
            def
            
            
          
           Package healthprobe implements the health check server | Package healthprobe implements the health check server | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the healthprobe component | Package fx provides the fx module for the healthprobe component | 
| 
          
            impl
            
            
          
           Package healthprobeimpl implements the healthprobe component interface | Package healthprobeimpl implements the healthprobe component interface | 
| Package hostname exposes hostname.Get() as a component. | Package hostname exposes hostname.Get() as a component. | 
| 
          
            hostnameimpl
            
            
          
           Package hostnameimpl implements the component hostname | Package hostnameimpl implements the component 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. | 
| 
          
            hostnameinterface
            module
            
          
          
         | |
| ipc
       | |
| 
          
            fx
            
            
          
           Package fx provides the fx module for the ipc component | Package fx provides the fx module for the ipc component | 
| 
          
            fx-none
            
            
          
           Package fx provides the fx module for the ipc component | Package fx provides the fx module for the ipc component | 
| 
          
            impl-none
            
            
          
           Package noneimpl implements a noop version of the auth_token component | Package noneimpl implements a noop version of the auth_token component | 
| 
          
            def
            module
            
          
          
         | |
| 
          
            httphelpers
            module
            
          
          
         | |
| 
          
            impl
            module
            
          
          
         | |
| 
          
            mock
            module
            
          
          
         | |
| log
            module
           | |
| 
          
            fx-systemprobe
            
            
          
           Package fx defines the fx options for this component. | Package fx defines the fx options for this component. | 
| 
          
            fx-trace
            
            
          
           Package fx defines the fx options for this component. | Package fx defines the fx options for this component. | 
| 
          
            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. | 
| 
          
            def
            module
            
          
          
         | |
| 
          
            fx
            module
            
          
          
         | |
| 
          
            impl
            module
            
          
          
         | |
| 
          
            impl-trace
            module
            
          
          
         | |
| 
          
            mock
            module
            
          
          
         | |
| 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 | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the lsof component | Package fx provides the fx module for the lsof component | 
| 
          
            impl
            
            
          
           Package lsofimpl implements the lsof component interface | Package lsofimpl implements the lsof component interface | 
| 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. | 
| 
          
            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 | 
| profiler
       | |
| 
          
            def
            
            
          
           Package profiler provides a flare folder containing the output of various agent's pprof servers | Package profiler provides a flare folder containing the output of various agent's pprof servers | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the profiler component | Package fx provides the fx module for the profiler component | 
| 
          
            impl
            
            
          
           Package profilerimpl implements the profiler component interface | Package profilerimpl implements the profiler component interface | 
| remoteagent
       | |
| 
          
            def
            
            
          
           Package remoteagent implements the remote agent component | Package remoteagent implements the remote agent component | 
| 
          
            fx-template
            
            
          
           Package fx provides the fx module for the remoteagent component | Package fx provides the fx module for the remoteagent component | 
| 
          
            helper
            
            
          
           Package helper implements the helper for the remoteagent component | Package helper implements the helper for the remoteagent component | 
| 
          
            impl-template
            
            
          
           Package templateimpl implements the remoteagent component interface | Package templateimpl implements the remoteagent component interface | 
| 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 | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the remoteagent component | Package fx provides the fx module for the remoteagent component | 
| 
          
            impl
            
            
          
           Package remoteagentregistryimpl implements the remoteagentregistry component interface | Package remoteagentregistryimpl implements the remoteagentregistry component interface | 
| 
          
            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 | 
| 
          
            util
            
            
          
           Package util provides utility functions for the remoteagent component. | Package util provides utility functions for the remoteagent component. | 
| secrets
            module
           | |
| 
          
            fx-noop
            
            
          
           Package fx expose the secrets noop comp to FX | Package fx expose the secrets noop comp to FX | 
| 
          
            def
            module
            
          
          
         | |
| 
          
            fx
            module
            
          
          
         | |
| 
          
            impl
            module
            
          
          
         | |
| 
          
            mock
            module
            
          
          
         | |
| 
          
            noop-impl
            module
            
          
          
         | |
| 
          
            utils
            module
            
          
          
         | |
| 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 | 
| 
          
            settingsimpl
            
            
          
           Package settingsimpl implements the interface for the settings component | Package settingsimpl implements the interface for the settings component | 
| status
            module
           | |
| 
          
            statusimpl
            module
            
          
          
         | |
| Package sysprobeconfig implements a component to handle system-probe configuration. | Package sysprobeconfig implements a component to handle system-probe configuration. | 
| 
          
            sysprobeconfigimpl
            
            
          
           Package sysprobeconfigimpl implements a component to handle system-probe configuration. | Package sysprobeconfigimpl implements a component to handle system-probe configuration. | 
| tagger
       | |
| 
          
            api
            
            
          
           Package api implements the Tagger API. | Package api implements the Tagger API. | 
| 
          
            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 | 
| 
          
            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. | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the tagger component | Package fx provides the fx module for the tagger component | 
| 
          
            fx-dual
            
            
          
           Package fx provides the fx module for the dual tagger component | Package fx provides the fx module for the dual tagger component | 
| 
          
            fx-noop
            
            
          
           Package fx provides the fx module for the noop tagger component | Package fx provides the fx module for the noop tagger component | 
| 
          
            fx-optional-remote
            
            
          
           Package fx provides the fx module for the optional remote tagger component for use in the trace-agent running in an Azure App Services (AAS) Extension. | Package fx provides the fx module for the optional remote tagger component for use in the trace-agent running in an Azure App Services (AAS) Extension. | 
| 
          
            impl
            
            
          
           Package taggerimpl contains the implementation of the tagger component. | Package taggerimpl contains the implementation of the tagger component. | 
| 
          
            impl-dual
            
            
          
           Package dualimpl contains the implementation of the dual tagger. | Package dualimpl contains the implementation of the dual tagger. | 
| 
          
            impl-noop
            
            
          
           Package noopimpl provides a noop implementation for the tagger component | Package noopimpl provides a noop implementation for the tagger component | 
| 
          
            impl-optional-remote
            
            
          
           Package optionalimpl contains the implementation of the optional remote tagger. | Package optionalimpl contains the implementation of the optional remote tagger. | 
| 
          
            k8s_metadata
            
            
          
           Package k8smetadata provides utilities to handle kubernetes metadata as tags | Package k8smetadata provides utilities to handle kubernetes metadata as tags | 
| 
          
            kubetags
            
            
          
           Package kubetags provides utilities to handle tags related to Kubernetes. | Package kubetags provides utilities to handle tags related to Kubernetes. | 
| 
          
            mock
            
            
          
           Package mock contains the interface of the mock for the tagger component. | Package mock contains the interface of the mock for the tagger component. | 
| 
          
            proto
            
            
          
           Package proto provides conversions between Tagger types and protobuf. | Package proto provides conversions between Tagger types and protobuf. | 
| 
          
            server
            
            
          
           Package server implements a gRPC server that streams Tagger entities. | Package server implements a gRPC server that streams Tagger entities. | 
| 
          
            taglist
            
            
          
           Package taglist provides helpers to interact with a tag list. | Package taglist provides helpers to interact with a tag list. | 
| 
          
            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. | 
| 
          
            def
            module
            
          
          
         | |
| 
          
            fx-remote
            module
            
          
          
         | |
| 
          
            generic_store
            module
            
          
          
         | |
| 
          
            impl-remote
            module
            
          
          
         | |
| 
          
            origindetection
            module
            
          
          
         | |
| 
          
            subscriber
            module
            
          
          
         | |
| 
          
            tags
            module
            
          
          
         | |
| 
          
            telemetry
            module
            
          
          
         | |
| 
          
            types
            module
            
          
          
         | |
| 
          
            utils
            module
            
          
          
         | |
| telemetry
            module
           | |
| workloadfilter
       | |
| 
          
            catalog
            
            
          
           Package catalog contains the implementation of the filtering catalogs. | Package catalog contains the implementation of the filtering catalogs. | 
| 
          
            def
            
            
          
           Package workloadfilter provides the interface for the filter component | Package workloadfilter provides the interface for the filter component | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the tagger component | Package fx provides the fx module for the tagger component | 
| 
          
            fx-mock
            
            
          
           Package fx provides the fx module for the filter component | Package fx provides the fx module for the filter component | 
| 
          
            impl
            
            
          
           Package workloadfilterimpl contains the implementation of the filter component. | Package workloadfilterimpl contains the implementation of the filter component. | 
| 
          
            impl/parse
            
            
          
           Package parse handles parsing and validating YAML configuration into CEL filter config | Package parse handles parsing and validating YAML configuration into CEL filter config | 
| 
          
            program
            
            
          
           Package program contains the implementation of filtering programs. | Package program contains the implementation of filtering programs. | 
| 
          
            util/celprogram
            
            
          
           Package celprogram contains helper functions to create CEL programs for filtering. | Package celprogram contains helper functions to create CEL programs for filtering. | 
| 
          
            util/workloadmeta
            
            
          
           Package workloadmeta contains utility functions for creating filterable objects. | Package workloadmeta contains utility functions for creating filterable objects. | 
| 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. | 
| 
          
            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. | 
| 
          
            collectors/catalog-dogstatsd
            
            
          
           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. | 
| 
          
            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. | 
| 
          
            collectors/internal/cloudfoundry/container
            
            
          
           Package container provides a workloadmeta collector for CloudFoundry container | Package container provides a workloadmeta collector for CloudFoundry container | 
| 
          
            collectors/internal/cloudfoundry/vm
            
            
          
           Package vm provides a workloadmeta collector for CloudFoundry VM | Package vm provides a workloadmeta collector for CloudFoundry VM | 
| 
          
            collectors/internal/containerd
            
            
          
           Package containerd provides the containerd colletor for workloadmeta | Package containerd provides the containerd colletor for workloadmeta | 
| 
          
            collectors/internal/crio
            
            
          
           Package crio implements the crio Workloadmeta collector. | Package crio implements the crio Workloadmeta collector. | 
| 
          
            collectors/internal/docker
            
            
          
           Package docker provides the docker collector for workloadmeta | Package docker provides the docker collector for workloadmeta | 
| 
          
            collectors/internal/ecs
            
            
          
           Package ecs provides the ecs colletor for workloadmeta | Package ecs provides the ecs colletor for workloadmeta | 
| 
          
            collectors/internal/ecsfargate
            
            
          
           Package ecsfargate provides the ecsfargate colletor for workloadmeta | Package ecsfargate provides the ecsfargate colletor for workloadmeta | 
| 
          
            collectors/internal/kubeapiserver
            
            
          
           Package kubeapiserver provides the kubeapiserver colletor for workloadmeta | Package kubeapiserver provides the kubeapiserver colletor for workloadmeta | 
| 
          
            collectors/internal/kubelet
            
            
          
           Package kubelet provides the kubelet colletor for workloadmeta | Package kubelet provides the kubelet colletor for workloadmeta | 
| 
          
            collectors/internal/kubemetadata
            
            
          
           Package kubemetadata implements the kube_metadata Workloadmeta collector. | Package kubemetadata implements the kube_metadata Workloadmeta collector. | 
| 
          
            collectors/internal/nvml
            
            
          
           Package nvml implements the NVML collector for workloadmeta | Package nvml implements the NVML collector for workloadmeta | 
| 
          
            collectors/internal/podman
            
            
          
           Package podman provides the docker collector for workloadmeta | Package podman provides the docker collector for workloadmeta | 
| 
          
            collectors/internal/process
            
            
          
           Package process implements the process collector for Workloadmeta. | Package process implements the process collector for Workloadmeta. | 
| 
          
            collectors/internal/processlanguage
            
            
          
           Package processlanguage implements the process language collector for Workloadmeta. | Package processlanguage implements the process language collector for 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. | 
| 
          
            collectors/internal/remote/processcollector
            
            
          
           Package processcollector implements the remote process collector for Workloadmeta. | Package processcollector implements the remote process collector for Workloadmeta. | 
| 
          
            collectors/internal/remote/workloadmeta
            
            
          
           Package workloadmeta implements the remote workloadmeta Collector. | Package workloadmeta implements the remote workloadmeta Collector. | 
| 
          
            collectors/sbomutil
            
            
          
           Package sbomutil contains SBOM utility functions for workload metadata collectors | Package sbomutil contains SBOM utility functions for workload metadata collectors | 
| 
          
            collectors/util
            
            
          
           Package util contains utility functions for workload metadata collectors | Package util contains utility functions for workload metadata collectors | 
| 
          
            def
            
            
          
           Package workloadmeta provides the workloadmeta component for the Datadog Agent | Package workloadmeta provides the workloadmeta component for the Datadog Agent | 
| 
          
            defaults
            
            
          
           Package defaults provides the default workloadmeta configuration for the agent. | Package defaults provides the default workloadmeta configuration for the agent. | 
| 
          
            fx
            
            
          
           Package fx provides the fx module for the workloadmeta component. | Package fx provides the fx module for the workloadmeta component. | 
| 
          
            fx-mock
            
            
          
           Package fx provides the workloadmeta fx mock component for the Datadog Agent | Package fx provides the workloadmeta fx mock component for the Datadog Agent | 
| 
          
            impl
            
            
          
           Package workloadmetaimpl implements the Workloadmeta component. | Package workloadmetaimpl implements the Workloadmeta component. | 
| 
          
            init
            
            
          
           Package init provides GetWorkloadmetaInit | Package init provides GetWorkloadmetaInit | 
| 
          
            mock
            
            
          
           Package mock provides the workloadmeta mock component for the Datadog Agent | Package mock provides the workloadmeta mock component for the Datadog Agent | 
| 
          
            proto
            
            
          
           Package proto provides conversions between Workloadmeta types and protobuf. | Package proto provides conversions between Workloadmeta types and protobuf. | 
| 
          
            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. | 
| 
          
            telemetry
            
            
          
           Package telemetry defines the telemetry for the Workloadmeta component. | Package telemetry defines the telemetry for the Workloadmeta component. |