contrib/log/slog

Those integration are enabled by having the following import in the project’s orchestrion.tool.go file:

import (
	_ "github.com/DataDog/orchestrion"

	_ "gopkg.in/DataDog/dd-trace-go.v1/contrib/log/slog" // integration
	//...
)

Package slog provides structured logging, in which log records include a message, a severity level, and various other attributes expressed as key-value pairs.

New

Join Point
All of
  • Import path log/slog
  • Function body
    • Function declaration
      • Function name New
Advice
Introduce new declarations:
//go:linkname __dd_slogtrace_WrapHandlerV1 gopkg.in/DataDog/dd-trace-go.v1/contrib/log/slog.WrapHandler
func __dd_slogtrace_WrapHandlerV1(Handler) Handler
Record link-time dependencies on:
Advice
Prepend statements produced by the following template:
{{ .Function.Argument 0 }} = __dd_slogtrace_WrapHandlerV1({{ .Function.Argument 0 }})