Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Self-monitoring #3

Open
i-ky opened this issue Oct 9, 2018 · 3 comments
Open

Self-monitoring #3

i-ky opened this issue Oct 9, 2018 · 3 comments
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested

Comments

@i-ky
Copy link
Owner

i-ky commented Oct 9, 2018

Monitoring InfluxDB instance will never be the goal of this module (there should be another module for that), but adding some self-monitoring would be nice. Total and per data type number of values sent to InfluxDB, time spent doing HTTP requests, etc. This would help user to judge if the chosen Zabbix-module-InfluxDB configuration provides optimal performance.

However, there are technical difficulties. Performance metrics can be obtained by history syncer processes doing actual work, but need to be provided somehow to poller processes to report them back to Zabbix. This will require some tedious inter-process communication and I'm not going to spend time on that unless there is some serious demand.

@i-ky i-ky added enhancement New feature or request help wanted Extra attention is needed question Further information is requested labels Oct 9, 2018
@anthonysomerset
Copy link

I'd Like to add/clarify this

Specifically logging any failures to insert data to influx :)

@i-ky
Copy link
Owner Author

i-ky commented May 6, 2019

I wouldn't consider logging as part of self-monitoring, but logging is important as well, and if you have a case where failure hasn't been logged properly, please provide some details in a separate issue.

@i-ky
Copy link
Owner Author

i-ky commented May 7, 2019

I had a fresh look into the code and into InfluxDB docs and I have reassuring news.

So, right now the module is using only /write HTTP endpoint and according to documentation it should return 204 No Content if everything goes fine. If not, it will return a different response code (which module checks for) and a JSON body containing more information on the failure. Since module sets neither CURLOPT_WRITEFUNCTION nor CURLOPT_WRITEDATA, libcurl will dump response body into stdout. And since Zabbix daemons redirect their stdout into log file you should be able to find failure details there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants