package
1.4.1
Repository: https://github.com/learninto/goutil.git
Documentation: pkg.go.dev

# README

memdb

memdb 主要解决以下问题:

  • 加载 redis 配置
  • 记录 redis 执行日志
  • 上报 opentracing 追踪数据
  • 汇总 prometheus 监控指标

核心思想是用github.com/ngrok/sqlmw把现有的database/sql驱动包起来, 拦截所有数据库操作进行观察。

配置

框架默认只支持 redis。

每个数据库的配置需要指定一个名字,并添加MEMDB_DSN_前缀。

配置内容使用 url 格式,参数使用 query 字符串传递。

MEMDB_DSN_BAR = "redis://name:password@localhost:6379?DB=1"

除了 hostname 之外,其他参数均为可选。支持的配置所有 int/bool/time.Duration 类型的配置。

配置列表参考官方文档:https://pkg.go.dev/github.com/go-redis/redis#Options

使用

框架通过memdb.Get(name)函数获取缓存实例,入参是配置名(去掉前缀), 返回的是*redis.Client对象。

ctx, db := Get(ctx, "foo")
db.Set(ctx, "a", "123", 0)

# Functions

Get 获取缓存实例 ctx, db := Get(ctx, "foo") db.Set(ctx, "a", "123", 0).
NewStatsCollector creates a new StatsCollector.

# Structs

No description provided by the author