fix(plugins): log plugin function not implemented and record successful request metrics

Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Deluan
2026-01-27 14:31:23 -05:00
parent 5db585e1b1
commit a55c4f0410
2 changed files with 3 additions and 2 deletions
+2 -1
View File
@@ -72,7 +72,8 @@ func callPluginFunction[I any, O any](ctx context.Context, plugin *plugin, funcN
} }
if exit != 0 { if exit != 0 {
if exit == notImplementedCode { if exit == notImplementedCode {
plugin.metrics.RecordPluginRequest(ctx, plugin.name, funcName, false, elapsed.Milliseconds()) log.Trace(ctx, "Plugin function not implemented", "plugin", plugin.name, "function", funcName, "pluginDuration", elapsed, "navidromeDuration", startCall.Sub(start))
plugin.metrics.RecordPluginRequest(ctx, plugin.name, funcName, true, elapsed.Milliseconds())
return result, fmt.Errorf("%w: %s", errNotImplemented, funcName) return result, fmt.Errorf("%w: %s", errNotImplemented, funcName)
} }
plugin.metrics.RecordPluginRequest(ctx, plugin.name, funcName, false, elapsed.Milliseconds()) plugin.metrics.RecordPluginRequest(ctx, plugin.name, funcName, false, elapsed.Milliseconds())
+1 -1
View File
@@ -126,6 +126,6 @@ var _ = Describe("callPluginFunction metrics", Ordered, func() {
Expect(calls).To(HaveLen(1)) Expect(calls).To(HaveLen(1))
Expect(calls[0].plugin).To(Equal("partial-metadata-agent")) Expect(calls[0].plugin).To(Equal("partial-metadata-agent"))
Expect(calls[0].method).To(Equal(FuncGetArtistMBID)) Expect(calls[0].method).To(Equal(FuncGetArtistMBID))
Expect(calls[0].ok).To(BeFalse()) Expect(calls[0].ok).To(BeTrue())
}) })
}) })