Documentation ¶
Index ¶
- Constants
- func AppName() string
- func AppType() int32
- func CheckValid(entity *Entity) error
- func GetDefaultLogDir() string
- func InitConfig(configPath string) error
- func LogBaseDir() string
- func LogUsePid() bool
- func Logger() logging.Logger
- func MetricLogFlushIntervalSec() uint32
- func MetricLogMaxFileAmount() uint32
- func MetricLogSingleFileMaxSize() uint64
- func OverrideConfigFromEnvAndInitLog() error
- func SetDefaultConfig(config *Entity)
- func SystemStatCollectIntervalMs() uint32
- func UseCacheTime() bool
- type Entity
- func (entity *Entity) AppName() string
- func (entity *Entity) AppType() int32
- func (entity *Entity) LogBaseDir() string
- func (entity *Entity) LogUsePid() bool
- func (entity *Entity) Logger() logging.Logger
- func (entity *Entity) MetricLogFlushIntervalSec() uint32
- func (entity *Entity) MetricLogMaxFileAmount() uint32
- func (entity *Entity) MetricLogSingleFileMaxSize() uint64
- func (entity *Entity) SystemStatCollectIntervalMs() uint32
- func (entity *Entity) UseCacheTime() bool
- type LogConfig
- type MetricLogConfig
- type SentinelConfig
- type StatConfig
- type SystemStatConfig
Constants ¶
View Source
const ( // UnknownProjectName represents the "default" value // that indicates the project name is absent. UnknownProjectName = "unknown_go_service" ConfFilePathEnvKey = "SENTINEL_CONFIG_FILE_PATH" AppNameEnvKey = "SENTINEL_APP_NAME" AppTypeEnvKey = "SENTINEL_APP_TYPE" LogDirEnvKey = "SENTINEL_LOG_DIR" LogNamePidEnvKey = "SENTINEL_LOG_USE_PID" DefaultConfigFilename = "sentinel.yml" DefaultAppType int32 = 0 DefaultMetricLogFlushIntervalSec uint32 = 1 DefaultMetricLogSingleFileMaxSize uint64 = 1024 * 1024 * 50 DefaultMetricLogMaxFileAmount uint32 = 8 DefaultSystemStatCollectIntervalMs uint32 = 1000 DefaultWarmUpColdFactor uint32 = 3 )
Variables ¶
This section is empty.
Functions ¶
func CheckValid ¶
func GetDefaultLogDir ¶
func GetDefaultLogDir() string
func InitConfig ¶
InitConfig loads general configuration from the given file.
func LogBaseDir ¶
func LogBaseDir() string
func LogUsePid ¶
func LogUsePid() bool
LogUsePid returns whether the log file name contains the PID suffix.
func MetricLogFlushIntervalSec ¶
func MetricLogFlushIntervalSec() uint32
func MetricLogMaxFileAmount ¶
func MetricLogMaxFileAmount() uint32
func MetricLogSingleFileMaxSize ¶
func MetricLogSingleFileMaxSize() uint64
func OverrideConfigFromEnvAndInitLog ¶
func OverrideConfigFromEnvAndInitLog() error
func SetDefaultConfig ¶
func SetDefaultConfig(config *Entity)
func SystemStatCollectIntervalMs ¶
func SystemStatCollectIntervalMs() uint32
func UseCacheTime ¶
func UseCacheTime() bool
Types ¶
type Entity ¶
type Entity struct { // Version represents the format version of the entity. Version string Sentinel SentinelConfig }
func NewDefaultConfig ¶
func NewDefaultConfig() *Entity
NewDefaultConfig creates a new default config entity.
func (*Entity) LogBaseDir ¶
func (*Entity) MetricLogFlushIntervalSec ¶
func (*Entity) MetricLogMaxFileAmount ¶
func (*Entity) MetricLogSingleFileMaxSize ¶
func (*Entity) SystemStatCollectIntervalMs ¶
func (*Entity) UseCacheTime ¶
type LogConfig ¶
type LogConfig struct { // logger indicates that using logger to replace default logging. Logger logging.Logger // Dir represents the log directory path. Dir string // UsePid indicates whether the filename ends with the process ID (PID). UsePid bool `yaml:"usePid"` // Metric represents the configuration items of the metric log. Metric MetricLogConfig }
LogConfig represent the configuration of logging in Sentinel.
type MetricLogConfig ¶
type MetricLogConfig struct { SingleFileMaxSize uint64 `yaml:"singleFileMaxSize"` MaxFileCount uint32 `yaml:"maxFileCount"` FlushIntervalSec uint32 `yaml:"flushIntervalSec"` }
MetricLogConfig represents the configuration items of the metric log.
type SentinelConfig ¶
type SentinelConfig struct { App struct { // Name represents the name of current running service. Name string // Type indicates the classification of the service (e.g. web service, API gateway). Type int32 } // Log represents configuration items related to logging. Log LogConfig // Stat represents configuration items related to statistics. Stat StatConfig // UseCacheTime indicates whether to cache time(ms) UseCacheTime bool `yaml:"useCacheTime"` }
SentinelConfig represent the general configuration of Sentinel.
type StatConfig ¶
type StatConfig struct {
System SystemStatConfig `yaml:"system"`
}
StatConfig represents the configuration items of statistics.
type SystemStatConfig ¶
type SystemStatConfig struct { // CollectIntervalMs represents the collecting interval of the system metrics collector. CollectIntervalMs uint32 `yaml:"collectIntervalMs"` }
SystemStatConfig represents the configuration items of system statistics.
Click to show internal directories.
Click to hide internal directories.