Documentation
¶
Index ¶
- type CacheCollector
- func (c *CacheCollector) Del(ctx context.Context, keys ...string) *redis.IntCmd
- func (c *CacheCollector) Get(ctx context.Context, key string) *redis.StringCmd
- func (c *CacheCollector) GetClient() *redis.Client
- func (c *CacheCollector) HDel(ctx context.Context, key string, fields ...string) *redis.IntCmd
- func (c *CacheCollector) HGet(ctx context.Context, key, field string) *redis.StringCmd
- func (c *CacheCollector) HSet(ctx context.Context, key string, values ...any) *redis.IntCmd
- func (c *CacheCollector) Ping(ctx context.Context) *redis.StatusCmd
- func (c *CacheCollector) PoolStats() *redis.PoolStats
- func (c *CacheCollector) Set(ctx context.Context, key string, value any, expiration time.Duration) *redis.StatusCmd
- type CacheMetricsCollector
- type Collector
- type DefaultCollector
- func (c *DefaultCollector) DBConnections(count int)
- func (c *DefaultCollector) DBQuery(duration time.Duration, err error)
- func (c *DefaultCollector) DBTransaction(err error)
- func (c *DefaultCollector) GetStats() map[string]any
- func (c *DefaultCollector) HealthCheck(component string, healthy bool)
- func (c *DefaultCollector) MQConsume(system string, err error)
- func (c *DefaultCollector) MQPublish(system string, err error)
- func (c *DefaultCollector) MongoOperation(operation string, err error)
- func (c *DefaultCollector) RedisCommand(command string, err error)
- func (c *DefaultCollector) RedisConnections(count int)
- func (c *DefaultCollector) SearchIndex(engine, operation string)
- func (c *DefaultCollector) SearchQuery(engine string, err error)
- type ExtensionCollector
- type ExtensionCollectorAdapter
- func (a *ExtensionCollectorAdapter) DBConnections(count int)
- func (a *ExtensionCollectorAdapter) DBQuery(duration time.Duration, err error)
- func (a *ExtensionCollectorAdapter) DBTransaction(err error)
- func (a *ExtensionCollectorAdapter) HealthCheck(component string, healthy bool)
- func (a *ExtensionCollectorAdapter) MQConsume(system string, err error)
- func (a *ExtensionCollectorAdapter) MQPublish(system string, err error)
- func (a *ExtensionCollectorAdapter) MongoOperation(operation string, err error)
- func (a *ExtensionCollectorAdapter) RedisCommand(command string, err error)
- func (a *ExtensionCollectorAdapter) RedisConnections(count int)
- func (a *ExtensionCollectorAdapter) SearchIndex(engine, operation string)
- func (a *ExtensionCollectorAdapter) SearchQuery(engine string, err error)
- type HealthChecker
- type HealthMonitor
- type NoOpCollector
- func (NoOpCollector) DBConnections(int)
- func (NoOpCollector) DBQuery(time.Duration, error)
- func (NoOpCollector) DBTransaction(error)
- func (NoOpCollector) HealthCheck(string, bool)
- func (NoOpCollector) MQConsume(string, error)
- func (NoOpCollector) MQPublish(string, error)
- func (NoOpCollector) MongoOperation(string, error)
- func (NoOpCollector) RedisCommand(string, error)
- func (NoOpCollector) RedisConnections(int)
- func (NoOpCollector) SearchIndex(string, string)
- func (NoOpCollector) SearchQuery(string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CacheCollector ¶
type CacheCollector struct {
// contains filtered or unexported fields
}
CacheCollector wraps Redis client with metrics
func NewCacheCollector ¶
func NewCacheCollector(client *redis.Client, collector CacheMetricsCollector) *CacheCollector
NewCacheCollector creates a cache collector wrapper
func (*CacheCollector) GetClient ¶
func (c *CacheCollector) GetClient() *redis.Client
GetClient returns the underlying Redis client
func (*CacheCollector) Ping ¶
func (c *CacheCollector) Ping(ctx context.Context) *redis.StatusCmd
Ping wraps Redis PING with metrics
func (*CacheCollector) PoolStats ¶
func (c *CacheCollector) PoolStats() *redis.PoolStats
PoolStats returns pool statistics and updates metrics
type CacheMetricsCollector ¶
CacheMetricsCollector for Redis cache operations
type Collector ¶
type Collector interface {
DBQuery(duration time.Duration, err error)
DBTransaction(err error)
DBConnections(count int)
RedisCommand(command string, err error)
RedisConnections(count int)
MongoOperation(operation string, err error)
SearchQuery(engine string, err error)
SearchIndex(engine, operation string)
MQPublish(system string, err error)
MQConsume(system string, err error)
HealthCheck(component string, healthy bool)
}
Collector defines interface for data layer metrics collection
type DefaultCollector ¶
type DefaultCollector struct {
// contains filtered or unexported fields
}
DefaultCollector provides basic metrics collection with atomic counters
func NewDefaultCollector ¶
func NewDefaultCollector() *DefaultCollector
NewDefaultCollector creates a new default collector
func (*DefaultCollector) DBConnections ¶
func (c *DefaultCollector) DBConnections(count int)
DBConnections Database connection metrics
func (*DefaultCollector) DBQuery ¶
func (c *DefaultCollector) DBQuery(duration time.Duration, err error)
DBQuery Database query metrics
func (*DefaultCollector) DBTransaction ¶
func (c *DefaultCollector) DBTransaction(err error)
DBTransaction Database transaction metrics
func (*DefaultCollector) GetStats ¶
func (c *DefaultCollector) GetStats() map[string]any
GetStats returns comprehensive statistics
func (*DefaultCollector) HealthCheck ¶
func (c *DefaultCollector) HealthCheck(component string, healthy bool)
HealthCheck Health check
func (*DefaultCollector) MQConsume ¶
func (c *DefaultCollector) MQConsume(system string, err error)
MQConsume Message queue consume metrics
func (*DefaultCollector) MQPublish ¶
func (c *DefaultCollector) MQPublish(system string, err error)
MQPublish Message queue publish metrics
func (*DefaultCollector) MongoOperation ¶
func (c *DefaultCollector) MongoOperation(operation string, err error)
MongoOperation MongoDB operation metrics
func (*DefaultCollector) RedisCommand ¶
func (c *DefaultCollector) RedisCommand(command string, err error)
RedisCommand Redis command metrics
func (*DefaultCollector) RedisConnections ¶
func (c *DefaultCollector) RedisConnections(count int)
RedisConnections Redis connection metrics
func (*DefaultCollector) SearchIndex ¶
func (c *DefaultCollector) SearchIndex(engine, operation string)
SearchIndex Search index metrics
func (*DefaultCollector) SearchQuery ¶
func (c *DefaultCollector) SearchQuery(engine string, err error)
SearchQuery Search query metrics
type ExtensionCollector ¶
type ExtensionCollector interface {
DBQuery(duration time.Duration, err error)
DBTransaction(err error)
DBConnections(count int)
RedisCommand(command string, err error)
RedisConnections(count int)
MongoOperation(operation string, err error)
SearchQuery(engine string, err error)
SearchIndex(engine, operation string)
MQPublish(system string, err error)
MQConsume(system string, err error)
HealthCheck(component string, healthy bool)
}
ExtensionCollector interface from extension layer
type ExtensionCollectorAdapter ¶
type ExtensionCollectorAdapter struct {
// contains filtered or unexported fields
}
ExtensionCollectorAdapter adapts extension metrics collector to data layer interface
func NewExtensionCollectorAdapter ¶
func NewExtensionCollectorAdapter(collector ExtensionCollector) *ExtensionCollectorAdapter
NewExtensionCollectorAdapter creates adapter for extension collector
func (*ExtensionCollectorAdapter) DBConnections ¶
func (a *ExtensionCollectorAdapter) DBConnections(count int)
func (*ExtensionCollectorAdapter) DBQuery ¶
func (a *ExtensionCollectorAdapter) DBQuery(duration time.Duration, err error)
Implement data layer Collector interface
func (*ExtensionCollectorAdapter) DBTransaction ¶
func (a *ExtensionCollectorAdapter) DBTransaction(err error)
func (*ExtensionCollectorAdapter) HealthCheck ¶
func (a *ExtensionCollectorAdapter) HealthCheck(component string, healthy bool)
func (*ExtensionCollectorAdapter) MQConsume ¶
func (a *ExtensionCollectorAdapter) MQConsume(system string, err error)
func (*ExtensionCollectorAdapter) MQPublish ¶
func (a *ExtensionCollectorAdapter) MQPublish(system string, err error)
func (*ExtensionCollectorAdapter) MongoOperation ¶
func (a *ExtensionCollectorAdapter) MongoOperation(operation string, err error)
func (*ExtensionCollectorAdapter) RedisCommand ¶
func (a *ExtensionCollectorAdapter) RedisCommand(command string, err error)
func (*ExtensionCollectorAdapter) RedisConnections ¶
func (a *ExtensionCollectorAdapter) RedisConnections(count int)
func (*ExtensionCollectorAdapter) SearchIndex ¶
func (a *ExtensionCollectorAdapter) SearchIndex(engine, operation string)
func (*ExtensionCollectorAdapter) SearchQuery ¶
func (a *ExtensionCollectorAdapter) SearchQuery(engine string, err error)
type HealthChecker ¶
HealthChecker interface for health checking
type HealthMonitor ¶
type HealthMonitor struct {
// contains filtered or unexported fields
}
HealthMonitor monitors data layer component health
func NewHealthMonitor ¶
func NewHealthMonitor(collector Collector) *HealthMonitor
NewHealthMonitor creates a new health monitor
func (*HealthMonitor) CheckAll ¶
func (h *HealthMonitor) CheckAll(ctx context.Context) map[string]bool
CheckAll performs health check on all registered components
func (*HealthMonitor) CheckComponent ¶
func (h *HealthMonitor) CheckComponent(ctx context.Context, name string) bool
CheckComponent checks a specific component
func (*HealthMonitor) RegisterComponent ¶
func (h *HealthMonitor) RegisterComponent(checker HealthChecker)
RegisterComponent registers a component for health monitoring
type NoOpCollector ¶
type NoOpCollector struct{}
NoOpCollector implements Collector with no-op methods
func (NoOpCollector) DBConnections ¶
func (NoOpCollector) DBConnections(int)
func (NoOpCollector) DBTransaction ¶
func (NoOpCollector) DBTransaction(error)
func (NoOpCollector) HealthCheck ¶
func (NoOpCollector) HealthCheck(string, bool)
func (NoOpCollector) MQConsume ¶
func (NoOpCollector) MQConsume(string, error)
func (NoOpCollector) MQPublish ¶
func (NoOpCollector) MQPublish(string, error)
func (NoOpCollector) MongoOperation ¶
func (NoOpCollector) MongoOperation(string, error)
func (NoOpCollector) RedisCommand ¶
func (NoOpCollector) RedisCommand(string, error)
func (NoOpCollector) RedisConnections ¶
func (NoOpCollector) RedisConnections(int)
func (NoOpCollector) SearchIndex ¶
func (NoOpCollector) SearchIndex(string, string)
func (NoOpCollector) SearchQuery ¶
func (NoOpCollector) SearchQuery(string, error)