Skip to content

Commit

Permalink
Msg => Log+Warn+Error
Browse files Browse the repository at this point in the history
  • Loading branch information
asmyasnikov committed Oct 21, 2024
1 parent a9786a7 commit 492a3c9
Show file tree
Hide file tree
Showing 9 changed files with 53 additions and 37 deletions.
6 changes: 4 additions & 2 deletions otel/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,11 @@ type (
Span interface {
TraceID() string

Relation(span Span)
Link(link Span, attributes ...KeyValue)

Msg(msg string, attributes ...KeyValue)
Log(msg string, attributes ...KeyValue)
Warn(err error, attributes ...KeyValue)
Error(err error, attributes ...KeyValue)

End(attributes ...KeyValue)
}
Expand Down
16 changes: 6 additions & 10 deletions otel/driver.go
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ func driver(cfg Config) trace.Driver { //nolint:gocyclo,funlen
return nil
}
s := cfg.SpanFromContext(*info.Context)
s.Msg(info.Call.FunctionID(),
s.Log(info.Call.FunctionID(),
kv.String("cause", safeError(info.Cause)),
)

Expand All @@ -234,7 +234,7 @@ func driver(cfg Config) trace.Driver { //nolint:gocyclo,funlen
functionID := info.Call.FunctionID()

return func(info trace.DriverConnStateChangeDoneInfo) {
s.Msg(functionID,
s.Log(functionID,
kv.String("old state", oldState),
kv.String("new state", safeStringer(info.State)),
)
Expand Down Expand Up @@ -318,11 +318,9 @@ func driver(cfg Config) trace.Driver { //nolint:gocyclo,funlen

return func(info trace.DriverBalancerChooseEndpointDoneInfo) {
if info.Error != nil {
parent.Msg(functionID,
kv.Error(info.Error),
)
parent.Error(info.Error)
} else {
parent.Msg(functionID,
parent.Log(functionID,
kv.String("address", safeAddress(info.Endpoint)),
kv.String("nodeID", safeNodeID(info.Endpoint)),
)
Expand All @@ -338,9 +336,7 @@ func driver(cfg Config) trace.Driver { //nolint:gocyclo,funlen

return func(info trace.DriverGetCredentialsDoneInfo) {
if info.Error != nil {
parent.Msg(functionID,
kv.Error(info.Error),
)
parent.Error(info.Error)
} else {
var mask bytes.Buffer
if len(info.Token) > 16 {
Expand All @@ -351,7 +347,7 @@ func driver(cfg Config) trace.Driver { //nolint:gocyclo,funlen
mask.WriteString("****")
}
mask.WriteString(fmt.Sprintf("(CRC-32c: %08X)", crc32.Checksum([]byte(info.Token), crc32.IEEETable)))
parent.Msg(functionID,
parent.Log(functionID,
kv.String("token", mask.String()),
)
}
Expand Down
18 changes: 18 additions & 0 deletions otel/field.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package otel

import (
"github.com/ydb-platform/ydb-go-sdk/v3/internal/kv"
)

type (
Field = kv.KeyValue
)

const (
IntType = kv.IntType
Int64Type = kv.Int64Type
StringType = kv.StringType
BoolType = kv.BoolType
StringsType = kv.StringsType
StringerType = kv.StringerType
)
7 changes: 3 additions & 4 deletions otel/helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ func finish(
fields ...KeyValue,
) {
if err != nil {
s.Msg(err.Error(), kv.Error(err))
s.Error(err)
}
s.End(fields...)
}
Expand All @@ -50,12 +50,11 @@ func logError(
var ydbErr ydb.Error
if xerrors.As(err, &ydbErr) {
fields = append(fields,
kv.Error(err),
kv.Int("error.ydb.code", int(ydbErr.Code())),
kv.String("error.ydb.name", ydbErr.Name()),
)
}
s.Msg(err.Error(), fields...)
s.Error(err, fields...)
}

func logToParentSpan(
Expand All @@ -65,7 +64,7 @@ func logToParentSpan(
fields ...KeyValue, //nolint:unparam
) {
parent := cfg.SpanFromContext(ctx)
parent.Msg(msg, fields...)
parent.Log(msg, fields...)
}

func logToParentSpanError(
Expand Down
6 changes: 4 additions & 2 deletions otel/noop.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,14 @@ func (noopConfig) Start(ctx context.Context, _ string, _ ...KeyValue) (context.C
return ctx, noopSpan{}
}

func (noopSpan) Relation(Span) {}
func (noopSpan) Link(Span, ...KeyValue) {}

func (noopSpan) TraceID() string {
return ""
}

func (n noopSpan) Msg(string, ...KeyValue) {}
func (n noopSpan) Log(string, ...KeyValue) {}
func (n noopSpan) Warn(error, ...KeyValue) {}
func (n noopSpan) Error(error, ...KeyValue) {}

func (n noopSpan) End(...KeyValue) {}
4 changes: 2 additions & 2 deletions otel/retry.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ func retry(cfg Config) (t trace.Retry) {
kv.Bool("idempotent", info.Idempotent),
)
if info.NestedCall {
start.Msg("nested call", kv.Error(errNestedCall))
start.Warn(errNestedCall)
}
ctx := *info.Context

Expand All @@ -87,7 +87,7 @@ func retry(cfg Config) (t trace.Retry) {
fields = append(fields, fieldsFromStore...)
}
if info.Error != nil {
fields = append(fields, kv.Error(info.Error))
start.Error(info.Error)
}
start.End(fields...)
}
Expand Down
10 changes: 5 additions & 5 deletions otel/scripting.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,15 +55,15 @@ func scripting(cfg Config) (t trace.Scripting) {
) func(
trace.ScriptingStreamExecuteDoneInfo,
) {
start.Msg("", kv.Error(info.Error))
if info.Error != nil {
start.Warn(info.Error)
}

return func(info trace.ScriptingStreamExecuteDoneInfo) {
start.Msg("")
if info.Error != nil {
start.End(kv.Error(info.Error))
} else {
start.End()
start.Error(info.Error)
}
start.End()
}
}
}
Expand Down
8 changes: 4 additions & 4 deletions otel/sql.go
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ func databaseSQL(cfg Config) (t trace.DatabaseSQL) {
)

if !isStmtCall(*info.Context) {
start.Relation(cfg.SpanFromContext(info.TxContext))
start.Link(cfg.SpanFromContext(info.TxContext))
}

return func(info trace.DatabaseSQLTxExecDoneInfo) {
Expand All @@ -235,7 +235,7 @@ func databaseSQL(cfg Config) (t trace.DatabaseSQL) {
)

if !isStmtCall(*info.Context) {
start.Relation(cfg.SpanFromContext(info.TxContext))
start.Link(cfg.SpanFromContext(info.TxContext))
}

return func(info trace.DatabaseSQLTxQueryDoneInfo) {
Expand Down Expand Up @@ -275,7 +275,7 @@ func databaseSQL(cfg Config) (t trace.DatabaseSQL) {
kv.String("query", info.Query),
)

start.Relation(cfg.SpanFromContext(info.StmtContext))
start.Link(cfg.SpanFromContext(info.StmtContext))

*info.Context = markStmtCall(*info.Context)

Expand All @@ -297,7 +297,7 @@ func databaseSQL(cfg Config) (t trace.DatabaseSQL) {
kv.String("query", info.Query),
)

start.Relation(cfg.SpanFromContext(info.StmtContext))
start.Link(cfg.SpanFromContext(info.StmtContext))

*info.Context = markStmtCall(*info.Context)

Expand Down
15 changes: 7 additions & 8 deletions otel/table.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,15 @@ func table(cfg Config) (t trace.Table) { //nolint:gocyclo
kv.Bool("idempotent", info.Idempotent),
)
if info.NestedCall {
start.Msg("nested call", kv.Error(errNestedCall))
start.Warn(errNestedCall)
}

return func(info trace.TableDoDoneInfo) {
fields := []KeyValue{
kv.Int("attempts", info.Attempts),
}
if info.Error != nil {
fields = append(fields, kv.Error(info.Error))
start.Error(info.Error)
}
start.End(fields...)
}
Expand All @@ -81,15 +81,15 @@ func table(cfg Config) (t trace.Table) { //nolint:gocyclo
kv.Bool("idempotent", info.Idempotent),
)
if info.NestedCall {
start.Msg("nested call", kv.Error(errNestedCall))
start.Warn(errNestedCall)
}

return func(info trace.TableDoTxDoneInfo) {
fields := []KeyValue{
kv.Int("attempts", info.Attempts),
}
if info.Error != nil {
fields = append(fields, kv.Error(info.Error))
start.Error(info.Error)
}
start.End(fields...)
}
Expand Down Expand Up @@ -247,10 +247,9 @@ func table(cfg Config) (t trace.Table) { //nolint:gocyclo

return func(info trace.TableSessionQueryStreamExecuteDoneInfo) {
if info.Error != nil {
start.End(kv.Error(info.Error))
} else {
start.End()
start.Error(info.Error)
}
start.End()
}
}

Expand All @@ -272,7 +271,7 @@ func table(cfg Config) (t trace.Table) { //nolint:gocyclo

return func(info trace.TableSessionQueryStreamReadDoneInfo) {
if info.Error != nil {
start.End(kv.Error(info.Error))
start.Error(info.Error)
} else {
start.End()
}
Expand Down

0 comments on commit 492a3c9

Please sign in to comment.