Documentation
¶
Overview ¶
Package softwareinventoryimpl contains the implementation of the inventory software component. This package provides the concrete implementation of the inventory software component that collects software inventory data from the Windows system through the System Probe.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HostSoftware ¶
type HostSoftware struct {
// Software is a list of software entries representing all installed applications
// found on the host system. Each entry contains detailed information about
// a specific software installation, including name, version, installation date,
// publisher, and other relevant metadata.
Software []software.Entry `json:"software"`
}
HostSoftware represents the software inventory data for a single host. This structure contains the list of all software entries found on the host system, providing a comprehensive view of installed applications and their metadata.
type Payload ¶
type Payload struct {
// Hostname is the name of the host system where the software inventory was collected.
// This field helps identify which system the inventory data belongs to.
Hostname string `json:"hostname"`
// Metadata contains the actual software inventory data collected from the host system.
// This includes detailed information about each installed software application.
Metadata HostSoftware `json:"host_software"`
}
Payload represents the complete software inventory payload sent to the Datadog backend. This structure contains all the metadata about software installed on the host system, including the hostname, timestamp of collection, and the actual software inventory data.
func (*Payload) MarshalJSON ¶
MarshalJSON implements custom JSON marshaling for the Payload type. This method ensures proper JSON serialization while avoiding infinite recursion that could occur with the default Go JSON marshaling due to the embedded types.
type Provides ¶
type Provides struct {
// Comp is the main component interface for software inventory
Comp softwareinventory.Component
// FlareProvider provides software inventory data for flare collection
FlareProvider flaretypes.Provider
// StatusHeaderProvider provides status information for the agent status page
StatusHeaderProvider status.HeaderInformationProvider
// Endpoint provides HTTP endpoint access to software inventory data
Endpoint api.AgentEndpointProvider
}
Provides defines the output of the inventory software component. This struct defines all the services and providers that the component makes available to the rest of the system.
type Requires ¶
type Requires struct {
// Log provides logging capabilities for the component
Log log.Component
// Config provides access to the agent configuration
Config config.Component
// SysprobeConfig provides access to the system probe configuration
SysprobeConfig sysprobeconfig.Component
// Serializer is used to serialize and send data to the backend
Serializer serializer.MetricSerializer
// Hostname provides the hostname of the current system
Hostname hostnameinterface.Component
// EventPlatform provides access to the event platform forwarder
EventPlatform eventplatform.Component
// Provides lifecycle hooks for the component
Lc compdef.Lifecycle
}
Requires defines the dependencies required by the inventory software component. This struct defines all the required dependencies that must be provided when creating a new inventory software component instance.