package
2.0.3
Repository: https://github.com/keepchen/go-sail.git
Documentation: pkg.go.dev

# Functions

GetLogger 获取日志服务实例.
InitLoggerZap 初始化zap日志服务 会加入默认的一个模块空间,当不传参调用GetLogger()时, 就是使用默认的模块空间 当启用elk时,logger使用redis队列作为媒介,需要在logstash侧配置对应的pipeline 队列的key取决于日志文件名和appName的组合,如: 日志文件名=logs/app.log,appName=app 则,队列名称为=> app:logs/app.log <此方法已弃用,将在未来版本中删除> Deprecated.
InitLoggerZapV2 初始化zap日志服务v2 会加入默认的一个模块空间,当不传参调用GetLogger()时, 就是使用默认的模块空间 当启用elk时,logger根据provider配置使用redis队列或nats publish等作为媒介,需要在logstash侧配置对应的pipeline 队列的key取决于日志文件名和appName的组合,如: 日志文件名=logs/app.log,appName=app 则,队列名称为=> app:logs/app.log.
MarshalInterfaceValue 将interface序列化成字符串 主要用于日志记录.
SetExporters 设置导出器 设置自定义的导出器.

# Structs

Conf 日志配置 <yaml example> logger: env: dev level: debug filename: logs/user_running.log max_size: 100 max_backups: 10 compress: true enable_elk_with_redis_list: false redis_list_key: goal-sail:logs/user_running.log <toml example> # ::zap日志组件配置:: [logger] # 日志环境 dev,prod env = "dev" # 日志级别 debug,info,warn,error,dpanic,panic,fatal level = "info" # 日志文件名称 需要跟上路径 filename = "logs/running.log" # 单文件日志大小限制,单位MB max_size = 100 # 最大历史文件保留数量 max_backups = 10 # 是否压缩历史文件 compress = true # 是否启用基于redis list的elk日志写入 enable_elk_with_redis_list = true # redis list的elk日志写入的key redis_list_key = "".
ConfV2 日志配置 <yaml example> loggerV2: env: dev level: debug filename: logs/user_running.log max_size: 100 max_backups: 10 compress: true exporter: provider: "redis-cluster" nats: subject: "logger" conn_conf: servers: - "nats://192.168.134.116:4222" username: admin password: changeme redis: list_key: "go-sail-user:logger" conn_conf: addr: host: "" port: 0 username: "" password: "" database: 0 ssl_enable: false cluster_conn_conf: ssl_enable: false addr_list: - host: 192.168.224.114 port: 6379 username: "" password: 123456 - host: 192.168.224.114 port: 6380 username: "" password: 123456 <toml example> # ::zap日志组件配置 v2:: [loggerV2] # 日志环境 dev,prod env = "dev" # 日志级别 debug,info,warn,error,dpanic,panic,fatal level = "info" # 日志文件名称 需要跟上路径 filename = "logs/running.log" # 单文件日志大小限制,单位MB max_size = 100 # 最大历史文件保留数量 max_backups = 10 # 是否压缩历史文件 compress = true # 日志导出器配置 [loggerV2.exporter] # 日志导出器介质 provider = "redis" # nats导出器配置 [loggerV2.exporter.nats] # nats主题 subject = "logger" # redis导出器配置 [loggerV2.exporter.redis] # list键名 list_key = "logger" [loggerV2.exporter.redis.conn_conf] host = "localhost" username = "" port = 6379 password = "" database = 0 ssl_enable = false [loggerV2.exporter.redis.cluster_conn_conf] [[loggerV2.exporter.redis.cluster_conn_conf.addr_list]] host = "localhost" username = "" port = 6380 password = "" [[loggerV2.exporter.redis.cluster_conn_conf.addr_list]] host = "localhost" username = "" port = 6381 password = "".