@@ -2,23 +2,27 @@ package main
2
2
3
3
import (
4
4
"context"
5
+ "io"
5
6
6
7
"go.uber.org/zap"
7
8
8
9
"github.com/code-tool/docker-fpm-wrapper/internal/zapx"
9
10
"github.com/code-tool/docker-fpm-wrapper/pkg/phpfpm"
10
11
)
11
12
12
- func startSlowlogProxyForPool (ctx context.Context , pool phpfpm.Pool , out chan phpfpm.SlowlogEntry ) error {
13
+ func startSlowlogProxyForPool (ctx context.Context , log * zap. Logger , pool phpfpm.Pool , out chan phpfpm.SlowlogEntry ) error {
13
14
fifoF , err := createFIFOByPathCtx (ctx , pool .SlowlogPath )
14
15
if err != nil {
15
16
return err
16
17
}
17
18
18
19
slowLogParser := phpfpm .NewSlowlogParser (pool .RequestSlowlogTraceDepth )
19
20
go func () {
20
- // TODO probably should be logged
21
- _ = slowLogParser .Parse (ctx , fifoF , out )
21
+ if err := slowLogParser .Parse (ctx , fifoF , out ); err != nil {
22
+ log .Error ("can't parse php-fpm slowlog entry" , zap .Error (err ))
23
+ }
24
+
25
+ _ , _ = io .Copy (io .Discard , fifoF )
22
26
}()
23
27
24
28
return nil
@@ -46,7 +50,7 @@ func startSlowlogProxies(ctx context.Context, log *zap.Logger, pools []phpfpm.Po
46
50
continue
47
51
}
48
52
49
- if err := startSlowlogProxyForPool (ctx , pool , outCh ); err != nil {
53
+ if err := startSlowlogProxyForPool (ctx , log , pool , outCh ); err != nil {
50
54
return err
51
55
}
52
56
}
0 commit comments