Skip to content

Commit 7386724

Browse files
committed
refactor log/sql and upload with off gocognit linter
1 parent 3d56192 commit 7386724

File tree

2 files changed

+116
-24
lines changed

2 files changed

+116
-24
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
* Refactored `log/sql.go` and extract funcs
12
* Refactored `metrics/driver.go` and extract funcs
23
* Refactored `metrics/sql.go` and extract funcs
34
* Refactored `internal/table/retry_test.go` and extract func `retry_test.checkResultsRetryWithCustomErrors`

log/sql.go

Lines changed: 115 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,30 @@ func DatabaseSQL(l Logger, d trace.Detailer, opts ...Option) (t trace.DatabaseSQ
1414
}
1515

1616
func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
17-
t.OnConnectorConnect = func(
17+
logger := l.logger
18+
loggerQuery := l.logQuery
19+
20+
t.OnConnectorConnect = connectorConnect(logger, d)
21+
t.OnConnPing = connPing(logger, d)
22+
t.OnConnClose = connClose(logger, d)
23+
t.OnConnBegin = connBegin(logger, d)
24+
t.OnConnPrepare = connPrepare(logger, loggerQuery, d)
25+
t.OnConnExec = connExec(logger, loggerQuery, d)
26+
t.OnConnQuery = connQuery(logger, loggerQuery, d)
27+
t.OnTxCommit = txCommit(logger, d)
28+
t.OnTxRollback = txRollback(logger, d)
29+
t.OnStmtClose = stmtClose(logger, d)
30+
t.OnStmtExec = stmtExec(logger, loggerQuery, d)
31+
t.OnStmtQuery = stmtQuery(logger, loggerQuery, d)
32+
33+
return t
34+
}
35+
36+
func connectorConnect(
37+
l Logger,
38+
d trace.Detailer,
39+
) func(info trace.DatabaseSQLConnectorConnectStartInfo) func(trace.DatabaseSQLConnectorConnectDoneInfo) {
40+
return func(
1841
info trace.DatabaseSQLConnectorConnectStartInfo,
1942
) func(
2043
trace.DatabaseSQLConnectorConnectDoneInfo,
@@ -42,8 +65,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
4265
}
4366
}
4467
}
68+
}
4569

46-
t.OnConnPing = func(info trace.DatabaseSQLConnPingStartInfo) func(trace.DatabaseSQLConnPingDoneInfo) {
70+
func connPing(
71+
l Logger,
72+
d trace.Detailer,
73+
) func(info trace.DatabaseSQLConnPingStartInfo) func(trace.DatabaseSQLConnPingDoneInfo) {
74+
return func(info trace.DatabaseSQLConnPingStartInfo) func(trace.DatabaseSQLConnPingDoneInfo) {
4775
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
4876
return nil
4977
}
@@ -65,7 +93,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
6593
}
6694
}
6795
}
68-
t.OnConnClose = func(info trace.DatabaseSQLConnCloseStartInfo) func(trace.DatabaseSQLConnCloseDoneInfo) {
96+
}
97+
98+
func connClose(
99+
l Logger,
100+
d trace.Detailer,
101+
) func(info trace.DatabaseSQLConnCloseStartInfo) func(trace.DatabaseSQLConnCloseDoneInfo) {
102+
return func(info trace.DatabaseSQLConnCloseStartInfo) func(trace.DatabaseSQLConnCloseDoneInfo) {
69103
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
70104
return nil
71105
}
@@ -87,7 +121,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
87121
}
88122
}
89123
}
90-
t.OnConnBegin = func(info trace.DatabaseSQLConnBeginStartInfo) func(trace.DatabaseSQLConnBeginDoneInfo) {
124+
}
125+
126+
func connBegin(
127+
l Logger,
128+
d trace.Detailer,
129+
) func(info trace.DatabaseSQLConnBeginStartInfo) func(trace.DatabaseSQLConnBeginDoneInfo) {
130+
return func(info trace.DatabaseSQLConnBeginStartInfo) func(trace.DatabaseSQLConnBeginDoneInfo) {
91131
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
92132
return nil
93133
}
@@ -109,13 +149,20 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
109149
}
110150
}
111151
}
112-
t.OnConnPrepare = func(info trace.DatabaseSQLConnPrepareStartInfo) func(trace.DatabaseSQLConnPrepareDoneInfo) {
152+
}
153+
154+
func connPrepare(
155+
l Logger,
156+
loggerQuery bool,
157+
d trace.Detailer,
158+
) func(info trace.DatabaseSQLConnPrepareStartInfo) func(trace.DatabaseSQLConnPrepareDoneInfo) {
159+
return func(info trace.DatabaseSQLConnPrepareStartInfo) func(trace.DatabaseSQLConnPrepareDoneInfo) {
113160
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
114161
return nil
115162
}
116163
ctx := with(*info.Context, TRACE, "ydb", "database", "sql", "conn", "prepare", "stmt")
117164
l.Log(ctx, "start",
118-
appendFieldByCondition(l.logQuery,
165+
appendFieldByCondition(loggerQuery,
119166
String("query", info.Query),
120167
)...,
121168
)
@@ -129,7 +176,7 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
129176
)
130177
} else {
131178
l.Log(WithLevel(ctx, ERROR), "failed",
132-
appendFieldByCondition(l.logQuery,
179+
appendFieldByCondition(loggerQuery,
133180
String("query", query),
134181
Error(info.Error),
135182
latencyField(start),
@@ -139,13 +186,20 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
139186
}
140187
}
141188
}
142-
t.OnConnExec = func(info trace.DatabaseSQLConnExecStartInfo) func(trace.DatabaseSQLConnExecDoneInfo) {
189+
}
190+
191+
func connExec(
192+
l Logger,
193+
loggerQuery bool,
194+
d trace.Detailer,
195+
) func(info trace.DatabaseSQLConnExecStartInfo) func(trace.DatabaseSQLConnExecDoneInfo) {
196+
return func(info trace.DatabaseSQLConnExecStartInfo) func(trace.DatabaseSQLConnExecDoneInfo) {
143197
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
144198
return nil
145199
}
146200
ctx := with(*info.Context, TRACE, "ydb", "database", "sql", "conn", "exec")
147201
l.Log(ctx, "start",
148-
appendFieldByCondition(l.logQuery,
202+
appendFieldByCondition(loggerQuery,
149203
String("query", info.Query),
150204
)...,
151205
)
@@ -161,7 +215,7 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
161215
} else {
162216
m := retry.Check(info.Error)
163217
l.Log(WithLevel(ctx, ERROR), "failed",
164-
appendFieldByCondition(l.logQuery,
218+
appendFieldByCondition(loggerQuery,
165219
String("query", query),
166220
Bool("retryable", m.MustRetry(idempotent)),
167221
Int64("code", m.StatusCode()),
@@ -174,13 +228,20 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
174228
}
175229
}
176230
}
177-
t.OnConnQuery = func(info trace.DatabaseSQLConnQueryStartInfo) func(trace.DatabaseSQLConnQueryDoneInfo) {
231+
}
232+
233+
func connQuery(
234+
l Logger,
235+
loggerQuery bool,
236+
d trace.Detailer,
237+
) func(info trace.DatabaseSQLConnQueryStartInfo) func(trace.DatabaseSQLConnQueryDoneInfo) {
238+
return func(info trace.DatabaseSQLConnQueryStartInfo) func(trace.DatabaseSQLConnQueryDoneInfo) {
178239
if d.Details()&trace.DatabaseSQLConnEvents == 0 {
179240
return nil
180241
}
181242
ctx := with(*info.Context, TRACE, "ydb", "database", "sql", "conn", "query")
182243
l.Log(ctx, "start",
183-
appendFieldByCondition(l.logQuery,
244+
appendFieldByCondition(loggerQuery,
184245
String("query", info.Query),
185246
)...,
186247
)
@@ -196,7 +257,7 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
196257
} else {
197258
m := retry.Check(info.Error)
198259
l.Log(WithLevel(ctx, ERROR), "failed",
199-
appendFieldByCondition(l.logQuery,
260+
appendFieldByCondition(loggerQuery,
200261
String("query", query),
201262
Bool("retryable", m.MustRetry(idempotent)),
202263
Int64("code", m.StatusCode()),
@@ -209,7 +270,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
209270
}
210271
}
211272
}
212-
t.OnTxCommit = func(info trace.DatabaseSQLTxCommitStartInfo) func(trace.DatabaseSQLTxCommitDoneInfo) {
273+
}
274+
275+
func txCommit(
276+
l Logger,
277+
d trace.Detailer,
278+
) func(info trace.DatabaseSQLTxCommitStartInfo) func(trace.DatabaseSQLTxCommitDoneInfo) {
279+
return func(info trace.DatabaseSQLTxCommitStartInfo) func(trace.DatabaseSQLTxCommitDoneInfo) {
213280
if d.Details()&trace.DatabaseSQLTxEvents == 0 {
214281
return nil
215282
}
@@ -231,7 +298,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
231298
}
232299
}
233300
}
234-
t.OnTxRollback = func(info trace.DatabaseSQLTxRollbackStartInfo) func(trace.DatabaseSQLTxRollbackDoneInfo) {
301+
}
302+
303+
func txRollback(
304+
l Logger,
305+
d trace.Detailer,
306+
) func(info trace.DatabaseSQLTxRollbackStartInfo) func(trace.DatabaseSQLTxRollbackDoneInfo) {
307+
return func(info trace.DatabaseSQLTxRollbackStartInfo) func(trace.DatabaseSQLTxRollbackDoneInfo) {
235308
if d.Details()&trace.DatabaseSQLTxEvents == 0 {
236309
return nil
237310
}
@@ -253,7 +326,13 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
253326
}
254327
}
255328
}
256-
t.OnStmtClose = func(info trace.DatabaseSQLStmtCloseStartInfo) func(trace.DatabaseSQLStmtCloseDoneInfo) {
329+
}
330+
331+
func stmtClose(
332+
l Logger,
333+
d trace.Detailer,
334+
) func(info trace.DatabaseSQLStmtCloseStartInfo) func(trace.DatabaseSQLStmtCloseDoneInfo) {
335+
return func(info trace.DatabaseSQLStmtCloseStartInfo) func(trace.DatabaseSQLStmtCloseDoneInfo) {
257336
if d.Details()&trace.DatabaseSQLStmtEvents == 0 {
258337
return nil
259338
}
@@ -275,13 +354,20 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
275354
}
276355
}
277356
}
278-
t.OnStmtExec = func(info trace.DatabaseSQLStmtExecStartInfo) func(trace.DatabaseSQLStmtExecDoneInfo) {
357+
}
358+
359+
func stmtExec(
360+
l Logger,
361+
loggerQuery bool,
362+
d trace.Detailer,
363+
) func(info trace.DatabaseSQLStmtExecStartInfo) func(trace.DatabaseSQLStmtExecDoneInfo) {
364+
return func(info trace.DatabaseSQLStmtExecStartInfo) func(trace.DatabaseSQLStmtExecDoneInfo) {
279365
if d.Details()&trace.DatabaseSQLStmtEvents == 0 {
280366
return nil
281367
}
282368
ctx := with(*info.Context, TRACE, "ydb", "database", "sql", "stmt", "exec")
283369
l.Log(ctx, "start",
284-
appendFieldByCondition(l.logQuery,
370+
appendFieldByCondition(loggerQuery,
285371
String("query", info.Query),
286372
)...,
287373
)
@@ -296,7 +382,7 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
296382
)
297383
} else {
298384
l.Log(WithLevel(ctx, ERROR), "failed",
299-
appendFieldByCondition(l.logQuery,
385+
appendFieldByCondition(loggerQuery,
300386
String("query", query),
301387
Error(info.Error),
302388
latencyField(start),
@@ -306,13 +392,20 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
306392
}
307393
}
308394
}
309-
t.OnStmtQuery = func(info trace.DatabaseSQLStmtQueryStartInfo) func(trace.DatabaseSQLStmtQueryDoneInfo) {
395+
}
396+
397+
func stmtQuery(
398+
l Logger,
399+
loggerQuery bool,
400+
d trace.Detailer,
401+
) func(info trace.DatabaseSQLStmtQueryStartInfo) func(trace.DatabaseSQLStmtQueryDoneInfo) {
402+
return func(info trace.DatabaseSQLStmtQueryStartInfo) func(trace.DatabaseSQLStmtQueryDoneInfo) {
310403
if d.Details()&trace.DatabaseSQLStmtEvents == 0 {
311404
return nil
312405
}
313406
ctx := with(*info.Context, TRACE, "ydb", "database", "sql", "stmt", "query")
314407
l.Log(ctx, "start",
315-
appendFieldByCondition(l.logQuery,
408+
appendFieldByCondition(loggerQuery,
316409
String("query", info.Query),
317410
)...,
318411
)
@@ -326,7 +419,7 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
326419
)
327420
} else {
328421
l.Log(WithLevel(ctx, ERROR), "failed",
329-
appendFieldByCondition(l.logQuery,
422+
appendFieldByCondition(loggerQuery,
330423
String("query", query),
331424
Error(info.Error),
332425
latencyField(start),
@@ -336,6 +429,4 @@ func internalDatabaseSQL(l *wrapper, d trace.Detailer) (t trace.DatabaseSQL) {
336429
}
337430
}
338431
}
339-
340-
return t
341432
}

0 commit comments

Comments
 (0)