(ctx context.Context, conn *pgx.Conn, data pgx.TracePrepareEndData)
| 332 | } |
| 333 | |
| 334 | func (tl *TraceLog) TracePrepareEnd(ctx context.Context, conn *pgx.Conn, data pgx.TracePrepareEndData) { |
| 335 | tl.ensureConfig() |
| 336 | prepareData := ctx.Value(tracelogPrepareCtxKey).(*tracePrepareData) |
| 337 | |
| 338 | endTime := time.Now() |
| 339 | interval := endTime.Sub(prepareData.startTime) |
| 340 | |
| 341 | if data.Err != nil { |
| 342 | if tl.shouldLog(LogLevelError) { |
| 343 | tl.log(ctx, conn, LogLevelError, "Prepare", map[string]any{"name": prepareData.name, "sql": prepareData.sql, "err": data.Err, tl.Config.TimeKey: interval}) |
| 344 | } |
| 345 | return |
| 346 | } |
| 347 | |
| 348 | if tl.shouldLog(LogLevelInfo) { |
| 349 | tl.log(ctx, conn, LogLevelInfo, "Prepare", map[string]any{"name": prepareData.name, "sql": prepareData.sql, tl.Config.TimeKey: interval, "alreadyPrepared": data.AlreadyPrepared}) |
| 350 | } |
| 351 | } |
| 352 | |
| 353 | type traceAcquireData struct { |
| 354 | startTime time.Time |
nothing calls this directly
no test coverage detected