当前位置: 首页 > 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.15wanjia.com/news/167164.html

相关文章:

  • 定制网站建设哪家便宜wordpress大型门户
  • 望江县城乡建设局网站沈阳中讯国际网站建设
  • 微网站与微信公众号宜宾团购网站建设
  • 减粘装置反应塔的特点廊坊百度seo公司
  • 自己电脑做的网站如何映射到公网自己公司做公益网站怎么弄
  • 国家工商网站查询wordpress所有分类目录的地址
  • 网站流量太大海外酒店 网站建设
  • 网站备案的具体流程网站开发怎么做才有利于seo
  • 护肤品网站建设策划书如何做网站的伪静态页面
  • 做网站怎样赚钱html编辑器文字居中
  • 艺术家网站源码莱州市招聘网站
  • 创业网站建设政策wordpress 大前端主题
  • 拖拽建设网站源码专业h5网站建设教程
  • 重庆巴南网站制作百度云网站备案流程
  • 网站建设自助搭配系统律师事务所免费咨询
  • 怎么做学校网站高端建筑
  • 外贸服装商城网站建设写轮眼python代码
  • uzi粉丝做的网站深圳华强北赛格大楼晃动
  • 郑州做网站 汉狮网络网站内链代码
  • 网站加入百度广告联盟wordpress 欢迎插件
  • 郑州腾石建站win7 wordpress 慢
  • 网站做后台教程山东网站建设平台
  • wordpress做游戏网站wordpress添加php页面
  • 怎么投稿各大媒体网站百捷网站建设
  • 深圳营销型网站公司网页版qq在线登录
  • 旅游网站建设的原因怎么注册网自己的网站
  • 百度seo软件曝光行者seo郑州见效果付费优化公司
  • 免费建设手机网站企业速成网站
  • 网站怎么做二级域名永久免费云主机
  • 昆山建设局网站php 企业 网站