Skip to content

Commit a21aa58

Browse files
idoqoBupycHuk
authored andcommitted
PMM-13426: Fix PBM collector memory leak (#928)
* add benchmark * disable pbm collector if there's an error during init * drop benchmark code * close pbm client * format imports * drop error log * drop log level to info (cherry picked from commit 686b313)
1 parent ce7ebc8 commit a21aa58

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

exporter/pbm_collector.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,16 @@ func (p *pbmCollector) collect(ch chan<- prometheus.Metric) {
8686
logger.Errorf("failed to create PBM client from uri %s: %s", p.mongoURI, err.Error())
8787
return
8888
}
89+
defer func() {
90+
err := pbmClient.Close(p.ctx)
91+
if err != nil {
92+
logger.Errorf("failed to close PBM client: %v", err)
93+
}
94+
}()
8995

9096
pbmConfig, err := pbmClient.GetConfig(p.ctx)
9197
if err != nil {
92-
logger.Errorf("failed to get PBM configuration: %s", err.Error())
98+
logger.Infof("failed to get PBM configuration: %s", err.Error())
9399
}
94100

95101
if pbmConfig != nil {

0 commit comments

Comments
 (0)