Documentation
¶
Index ¶
- Constants
- func AppHealthOutcomeFromRuntimeState(runtimeState string) string
- func IsStrongerFailure(existingStatus, nextStatus string, priorityMap map[string]int) bool
- func LoadLocalServiceLog(service swcatalog.LocalService, stream string, maxBytes int) (string, bool, error)
- func NormalizeReachabilityIntervalMinutes(value int) int
- func NormalizeSchedulingMap(value map[string]any) map[string]any
- func RuntimeSummaryOutcomeFromRuntimeState(runtimeState string) string
- func StatusPriorityWithMap(status string, priorityMap map[string]int) int
- type AppHealthTargetPolicy
- type CanonicalSignalEvent
- type CredentialTargetPolicy
- type LocalServiceObservation
- type ManagedCollectorPolicySettings
- type PlatformSelfObservationSettings
- func DefaultPlatformSelfObservationSettings() PlatformSelfObservationSettings
- func LoadPlatformSelfObservationRuntimeSettings(app core.App, hostTelemetryFallback, containerTelemetryFallback bool) PlatformSelfObservationSettings
- func LoadPlatformSelfObservationSettings(app core.App) PlatformSelfObservationSettings
- type PolicySettings
- type ReachabilityTargetPolicy
- type ResolvedInstanceTarget
- func (r ResolvedInstanceTarget) CredentialReasonCodeFor(outcome string, fallback string) string
- func (r ResolvedInstanceTarget) CredentialReasonFor(outcome string, fallback string) string
- func (r ResolvedInstanceTarget) CredentialStatusFor(outcome string) string
- func (r ResolvedInstanceTarget) EligibleForCredential() (bool, string)
- func (r ResolvedInstanceTarget) EligibleForReachability() (bool, string)
- func (r ResolvedInstanceTarget) ReachabilityReasonCodeFor(outcome string, fallback string) string
- func (r ResolvedInstanceTarget) ReachabilityReasonFor(outcome string, fallback string) string
- func (r ResolvedInstanceTarget) ReachabilityStatusFor(outcome string) string
- func (r ResolvedInstanceTarget) StatusPriorityFor(status string) int
- func (r ResolvedInstanceTarget) SupportsCheck(checkKind string) bool
- type RuntimeSummaryTargetPolicy
- type SchedulingSettings
- type TargetCheckPolicies
- type TargetRegistryEntry
- func (e TargetRegistryEntry) AppHealthReasonCodeFor(outcome string, fallback string) string
- func (e TargetRegistryEntry) AppHealthReasonFor(outcome string, fallback string) string
- func (e TargetRegistryEntry) AppHealthStatusFor(outcome string) string
- func (e TargetRegistryEntry) RuntimeReasonCodeFor(outcome string, fallback string) string
- func (e TargetRegistryEntry) RuntimeReasonFor(outcome string, fallback string) string
- func (e TargetRegistryEntry) RuntimeStatusFor(outcome string) string
- func (e TargetRegistryEntry) StatusPriorityFor(status string) int
Constants ¶
View Source
const ( TargetTypeServer = "server" TargetTypeApp = "app" TargetTypeContainer = "container" TargetTypeResource = "resource" TargetTypePlatform = "platform" TargetTypeAIProvider = "ai_provider" TargetTypeConnector = "connector" )
View Source
const ( StatusHealthy = "healthy" StatusDegraded = "degraded" StatusOffline = "offline" StatusUnreachable = "unreachable" StatusCredentialInvalid = "credential_invalid" // #nosec G101 -- symbolic monitor status, not a credential StatusUnknown = "unknown" )
View Source
const ( SignalSourceCollector = "monitor_collector" SignalSourceAppOS = "appos_active_check" SignalSourceSelf = "appos_self" SignalSourceInventory = "appos_inventory" MetricsFreshnessFresh = "fresh" MetricsFreshnessStale = "stale" MetricsFreshnessMissing = "missing" MetricsFreshnessUnknown = "unknown" )
View Source
const ( MetricsStaleThreshold = 90 * time.Second MetricsMissingThreshold = 180 * time.Second )
View Source
const ( CheckKindCredential = "credential" CheckKindAppHealth = "app_health" CheckKindRuntime = "runtime_summary" CheckKindAvailability = "availability" CheckKindReachability = "reachability" CheckKindMetricsFreshness = "metrics_freshness" CheckKindControlReachability = "control_reachability" CheckKindFactsSnapshot = "facts_snapshot" )
View Source
const ( SettingsModule = "monitor" SchedulingSettingsKey = "scheduling" PolicySettingsKey = "policy" PlatformSelfObservationSettingsKey = "platform-self-observation" ManagedCollectorPolicySettingsKey = "managed-collector-policy" ReachabilityIntervalMinMinutes = 60 ReachabilityIntervalMaxMinutes = 1440 ReachabilityIntervalStepMinutes = 60 )
Variables ¶
This section is empty.
Functions ¶
func IsStrongerFailure ¶
IsStrongerFailure reports whether existingStatus has a higher priority (more severe) than nextStatus.
func LoadLocalServiceLog ¶
Types ¶
type AppHealthTargetPolicy ¶
type CanonicalSignalEvent ¶
type CanonicalSignalEvent struct {
TargetType string
TargetID string
DisplayName string
Status string
Reason string
SignalSource string
ObservedAt time.Time
LastSuccessAt *time.Time
LastFailureAt *time.Time
LastCheckedAt *time.Time
LastReportedAt *time.Time
ConsecutiveFailures *int
Summary map[string]any
StatusPriorityMap map[string]int
PreserveStrongerFailure bool
}
type CredentialTargetPolicy ¶
type LocalServiceObservation ¶
type LocalServiceObservation struct {
Name string
Lifecycle string
Visibility string
State string
PID int
Uptime int64
CPU float64
Memory int64
LastDetectedAt string
LogAvailable bool
}
func ObserveLocalServices ¶
func ObserveLocalServices(registry *swcatalog.LocalRegistry) []LocalServiceObservation
type ManagedCollectorPolicySettings ¶
type ManagedCollectorPolicySettings struct {
CollectionInterval time.Duration
FlushInterval time.Duration
MetricBatchSize int
MetricBufferLimit int
CollectionJitter time.Duration
FlushJitter time.Duration
}
func DefaultManagedCollectorPolicySettings ¶
func DefaultManagedCollectorPolicySettings() ManagedCollectorPolicySettings
func LoadManagedCollectorPolicySettings ¶
func LoadManagedCollectorPolicySettings(app core.App) ManagedCollectorPolicySettings
type PlatformSelfObservationSettings ¶
type PlatformSelfObservationSettings struct {
PlatformObserverInterval time.Duration
SchedulerStaleThreshold time.Duration
EnableHostTelemetry bool
EnableContainerTelemetry bool
}
func DefaultPlatformSelfObservationSettings ¶
func DefaultPlatformSelfObservationSettings() PlatformSelfObservationSettings
func LoadPlatformSelfObservationRuntimeSettings ¶
func LoadPlatformSelfObservationRuntimeSettings(app core.App, hostTelemetryFallback, containerTelemetryFallback bool) PlatformSelfObservationSettings
func LoadPlatformSelfObservationSettings ¶
func LoadPlatformSelfObservationSettings(app core.App) PlatformSelfObservationSettings
type PolicySettings ¶
type PolicySettings struct {
ReachabilityProbeTimeout time.Duration
MetricsFreshnessLookback time.Duration
MetricsStaleThreshold time.Duration
MetricsMissingThreshold time.Duration
ControlProbeTimeout time.Duration
FactsPullTimeout time.Duration
RuntimePullTimeout time.Duration
FactsPullConcurrency int
RuntimePullConcurrency int
}
func DefaultPolicySettings ¶
func DefaultPolicySettings() PolicySettings
func LoadPolicySettings ¶
func LoadPolicySettings(app core.App) PolicySettings
type ResolvedInstanceTarget ¶
type ResolvedInstanceTarget struct {
Entry TargetRegistryEntry
Item *instances.Instance
}
func ResolveInstanceTarget ¶
func ResolveInstanceTarget(item *instances.Instance) (ResolvedInstanceTarget, bool, error)
func (ResolvedInstanceTarget) CredentialReasonCodeFor ¶
func (r ResolvedInstanceTarget) CredentialReasonCodeFor(outcome string, fallback string) string
func (ResolvedInstanceTarget) CredentialReasonFor ¶
func (r ResolvedInstanceTarget) CredentialReasonFor(outcome string, fallback string) string
func (ResolvedInstanceTarget) CredentialStatusFor ¶
func (r ResolvedInstanceTarget) CredentialStatusFor(outcome string) string
func (ResolvedInstanceTarget) EligibleForCredential ¶
func (r ResolvedInstanceTarget) EligibleForCredential() (bool, string)
func (ResolvedInstanceTarget) EligibleForReachability ¶
func (r ResolvedInstanceTarget) EligibleForReachability() (bool, string)
func (ResolvedInstanceTarget) ReachabilityReasonCodeFor ¶
func (r ResolvedInstanceTarget) ReachabilityReasonCodeFor(outcome string, fallback string) string
func (ResolvedInstanceTarget) ReachabilityReasonFor ¶
func (r ResolvedInstanceTarget) ReachabilityReasonFor(outcome string, fallback string) string
func (ResolvedInstanceTarget) ReachabilityStatusFor ¶
func (r ResolvedInstanceTarget) ReachabilityStatusFor(outcome string) string
func (ResolvedInstanceTarget) StatusPriorityFor ¶
func (r ResolvedInstanceTarget) StatusPriorityFor(status string) int
func (ResolvedInstanceTarget) SupportsCheck ¶
func (r ResolvedInstanceTarget) SupportsCheck(checkKind string) bool
type SchedulingSettings ¶
type SchedulingSettings struct {
ReachabilityIntervalMinutes int
MetricsFreshnessIntervalMinutes int
ControlReachabilityIntervalMinutes int
RuntimeSnapshotIntervalMinutes int
CredentialSweepIntervalMinutes int
AppHealthIntervalMinutes int
FactsPullIntervalMinutes int
}
func DefaultSchedulingSettings ¶
func DefaultSchedulingSettings() SchedulingSettings
func LoadSchedulingSettings ¶
func LoadSchedulingSettings(app core.App) SchedulingSettings
type TargetCheckPolicies ¶
type TargetCheckPolicies struct {
Reachability *ReachabilityTargetPolicy `json:"reachability,omitempty"`
Credential *CredentialTargetPolicy `json:"credential,omitempty"`
AppHealth *AppHealthTargetPolicy `json:"app_health,omitempty"`
Runtime *RuntimeSummaryTargetPolicy `json:"runtime_summary,omitempty"`
}
type TargetRegistryEntry ¶
type TargetRegistryEntry struct {
ID string `json:"id"`
TargetType string `json:"targetType"`
Kind string `json:"kind,omitempty"`
Traits []string `json:"traits,omitempty"`
TemplateIDs []string `json:"templateIds,omitempty"`
SignalSources []string `json:"signalSources,omitempty"`
EnabledChecks []string `json:"enabledChecks,omitempty"`
StatusPriority map[string]int `json:"statusPriority,omitempty"`
Checks TargetCheckPolicies `json:"checks,omitempty"`
}
func MonitoringTargetRegistry ¶
func MonitoringTargetRegistry() ([]TargetRegistryEntry, error)
func ResolveAppBaselineTarget ¶
func ResolveAppBaselineTarget() TargetRegistryEntry
func ResolveTargetRegistryEntry ¶
func ResolveTargetRegistryEntry(targetType, kind, templateID string) (TargetRegistryEntry, bool, error)
func (TargetRegistryEntry) AppHealthReasonCodeFor ¶
func (e TargetRegistryEntry) AppHealthReasonCodeFor(outcome string, fallback string) string
func (TargetRegistryEntry) AppHealthReasonFor ¶
func (e TargetRegistryEntry) AppHealthReasonFor(outcome string, fallback string) string
func (TargetRegistryEntry) AppHealthStatusFor ¶
func (e TargetRegistryEntry) AppHealthStatusFor(outcome string) string
func (TargetRegistryEntry) RuntimeReasonCodeFor ¶
func (e TargetRegistryEntry) RuntimeReasonCodeFor(outcome string, fallback string) string
func (TargetRegistryEntry) RuntimeReasonFor ¶
func (e TargetRegistryEntry) RuntimeReasonFor(outcome string, fallback string) string
func (TargetRegistryEntry) RuntimeStatusFor ¶
func (e TargetRegistryEntry) RuntimeStatusFor(outcome string) string
func (TargetRegistryEntry) StatusPriorityFor ¶
func (e TargetRegistryEntry) StatusPriorityFor(status string) int
Source Files
¶
Click to show internal directories.
Click to hide internal directories.