jenningsloy318 / redfish_exporter

exporter to get metrics from redfish based hardware such as lenovo/dell/superc servers
Apache License 2.0
70 stars 61 forks source link

performance degradation with gofish 1.14 and added redfish_manager_log metrics #77

Open ulikl opened 9 months ago

ulikl commented 9 months ago

Hi,

we have seen a performance degradation for the exporter due to the introduction of redfish_manager_log and gofish upgrade to 1.14 from ca. 50seconds to over 2m.

Disabling the redfish_manager_log metrics gained 30seconds. Is it possible to make the log metrics optional, as these are also quite a lot?

The main degradation is probably manly due to the concurrency changes and the default concurrency being 1. see https://github.com/stmcginnis/gofish/pull/261

See have tested with increasing the concurrency in https://github.com/jenningsloy318/redfish_exporter/blob/master/collector/redfish_collector.go#L108

config := gofish.ClientConfig{
        Endpoint: url,
        Username: username,
        Password: password,
        Insecure: true,
        Endpoint:              url,
        Username:              username,
        Password:              password,
        Insecure:              true,
        MaxConcurrentRequests: 15,

Note: this need the latest gofish release 1.15.

With this we are back to the old runtimes. We are still testing with concurrent calls of the redfish exporter.

Kind Regards, Ulrike