当前位置: 首页 > news >正文

神马网站可以做兼职山东关键词优化联系电话

神马网站可以做兼职,山东关键词优化联系电话,日照公司做网站,昆明广告设计公司排行本文介绍通过 pgx库集成sentry, pgx 特点是速度快,可以完全控制,并且支持所有 postgres 数据类型。 pgx地址: https://github.com/jackc/pgx 最简单的接入方式是自定义一个logger, 然后注入到pgx, 完整示…

本文介绍通过 pgx库集成sentry, pgx 特点是速度快,可以完全控制,并且支持所有 postgres 数据类型。

pgx地址: https://github.com/jackc/pgx

最简单的接入方式是自定义一个logger, 然后注入到pgx, 完整示例如下

package mainimport ("context""log""os""time""github.com/getsentry/sentry-go""github.com/jackc/pgx/v4""github.com/jackc/pgx/v4/log/logrusadapter""github.com/jackc/pgx/v4/pgxpool""github.com/sirupsen/logrus"
)// TracingLogger does two things at once, logging and tracing
type TracingLogger struct {logger *logrusadapter.Logger
}func NewTracingLogger(logger logrus.FieldLogger) *TracingLogger {return &TracingLogger{logger: logrusadapter.NewLogger(logger)}
}func (l *TracingLogger) Log(ctx context.Context, level pgx.LogLevel, msg string, data map[string]interface{}) {l.logger.Log(ctx, level, msg, data)span := sentry.StartSpan(ctx, "postgres "+msg)defer span.Finish()if data != nil {if span.Data == nil {span.Data = make(map[string]interface{})}for key, value := range data {value, ok := value.(string)if ok {span.Data[key] = value}}// since this method is called after a query is done,// we need to correct span start timeexecTime, ok := data["time"].(time.Duration)if ok {span.StartTime = time.Now().Add(-execTime)}}
}func main() {err := sentry.Init(sentry.ClientOptions{Debug:              true,Dsn:                "https://a5eac4fa3396cbfac8fb4baa6a9c03a3@o4504291071688704.ingest.sentry.io/4506715873804288",AttachStacktrace:   true,EnableTracing:      true,SampleRate:         1.0,TracesSampleRate:   1.0,ProfilesSampleRate: 1.0,})if err != nil {log.Fatalf("sentry.Init: %s", err)}defer sentry.Flush(2 * time.Second)config, err := pgxpool.ParseConfig(os.Getenv("DATABASE_URL"))if err != nil {log.Fatal(err)}logger := logrus.New()config.ConnConfig.Logger = NewTracingLogger(logger)conn, err := pgxpool.ConnectConfig(ctx, config)if err != nil {log.Fatal(err)}defer conn.Close()ctx := context.Background()tx := sentry.StartTransaction(ctx, "test_pgx")defer tx.Finish()ctx = tx.Context()err = conn.QueryRow(ctx, "SELECT 1").Scan()if err != nil {log.Fatal(err)}
}

参考:
https://anymindgroup.com/news/tech-blog/15724/

http://www.zhongyajixie.com/news/21527.html

相关文章:

  • 美食网站联系我们怎么做国外推广网站有什么
  • 网站建设公司是什么seo引擎优化外包
  • 做网站怎么连数据库什么网站都能进的浏览器
  • 国内设计师个人网站seo管理软件
  • 申请网站一年多少钱指数运算法则
  • 枣强网站建设代理品牌营销推广公司
  • 用jquery做网站好吗大数据比较好的培训机构
  • 网站为什么做静态深圳网站关键词
  • dedecms物流企业网站模板(适合快递友情链接交换形式有哪些
  • 义乌网站建设技术托管杭州seo专员
  • 做音乐网站的选题背景桂林网页
  • 网站开发咨询深圳网络推广网站
  • 有哪些网站有做网页用的小图片网络营销策划书3000字
  • 专注旅游网站网站开发seo研究中心vip教程
  • 乐山网站开发公司电话临沂seo排名外包
  • asp网站制作免费模板下载seo也成搜索引擎优化
  • 网站被攻击 是vps问题还是dz程序seo技术
  • 365建站器全网营销国际系统
  • 成都网络推广网站怎么做app推广和宣传
  • 公司网站做么做百度排名2024年3月新冠高峰
  • 有做教育行业的招聘网站吗长沙百度网站优化
  • 手机网站metaseo博客优化
  • php英文商城网站建设优化推广公司哪家好
  • 杭州哪里可以做网站推广怎么把广告发到各大平台
  • 南京网站制作公司怎么样免费网站注册com
  • 北京网站开发哪家强企业产品网络推广
  • 网站设计的灵感来源个人引流推广怎么做
  • 什么网站做b2b免费网站制作app
  • 国内知名景观设计公司seo推广营销公司
  • 淄博网站建设找淄深网北京昨天出啥大事了