Documentation
¶
Overview ¶
Package procmeta manages process metadata lifecycle.
ProcessMetadata holds environment variables, command-line arguments, and full command line for expression evaluation.
Manager provides command-query separation:
Queries (read-only):
- Get(pid) - Retrieve metadata
- GetError(pid) - Retrieve collection errors
- GetIssues(pid) - Retrieve capture warnings
Commands (mutations):
- Set(pid, metadata) - Store metadata
- SetError(pid, err) - Store collection error
- AddIssue(pid, issue) - Add capture warning
- Delete(pid) - Clean up on process exit
- GetOrCreate(pid) - Atomic get-or-create
Thread-safe with RWMutex for concurrent access.
Package procmeta collects process metadata from /proc filesystem.
Index ¶
- type Manager
- func (m *Manager) AddIssue(pid uint32, issue string)
- func (m *Manager) AddIssues(pid uint32, issues []string)
- func (m *Manager) Delete(pid uint32)
- func (m *Manager) Get(pid uint32) *ProcessMetadata
- func (m *Manager) GetError(pid uint32) error
- func (m *Manager) GetIssues(pid uint32) []string
- func (m *Manager) GetOrCreate(pid uint32) *ProcessMetadata
- func (m *Manager) Set(pid uint32, metadata *ProcessMetadata)
- func (m *Manager) SetError(pid uint32, err error)
- type ProcessMetadata
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager manages process metadata lifecycle. It provides command-query separation for metadata access.
func (*Manager) Delete ¶
Delete removes all data for a PID (command). This should be called when a process exits.
func (*Manager) Get ¶
func (m *Manager) Get(pid uint32) *ProcessMetadata
Get retrieves metadata for a PID (query). Returns nil if no metadata exists for this PID.
func (*Manager) GetError ¶
GetError retrieves the metadata collection error for a PID (query). Returns nil if no error exists for this PID.
func (*Manager) GetIssues ¶
GetIssues retrieves the capture issues for a PID (query). Returns nil if no issues exist for this PID.
func (*Manager) GetOrCreate ¶
func (m *Manager) GetOrCreate(pid uint32) *ProcessMetadata
GetOrCreate retrieves metadata for a PID, creating it if it doesn't exist (command). Returns the metadata (existing or newly created).
func (*Manager) Set ¶
func (m *Manager) Set(pid uint32, metadata *ProcessMetadata)
Set stores metadata for a PID (command). If metadata already exists, it is replaced.