Hello,
it would be nice to know how long time we spent in routines. Now I have problem with monitoring my netware server. When I start zabbix server, my netware server is under heavy load. I tried to find what happened and found it. It is novell specific but I think it should be repaired in zabbix too. Sorry for longer text
When zabbix server threads tries to fetch informations, it contacts agent and wait for timeout. It is normal. But I looked to log and I saw that zabbix serves tries to fetch same information more times. It can be problem. Especially, some queries are cpu expensive and I configured to fetch them each 600secs but when client goes up, it tries to fetch this information six or more times in short time (1 min). I think it is due to more threads doing same thing ? Maybe there should be some limit to realy not fetch same information in more threads.
Next suggestion, which belongs here, is that it would be nice to know statistics about data fetching. I know that it is possible to make analyze from debugging output of zabbix_server (I will do this for my purposes). But I have no time spent in sql statements. Maybe
zabbix_log( LOG_LEVEL_DEBUG, "End of query:%s",query);
could be in db.c just before leaving DBselect* and DBthread* functions.
To store this informations in db if user want: (it is only idea..)
zabbix[conn_time,itemid] would return last time needet to connect to server for given item
zabbix[proc_time,itemid] would return time used to fetch information
zabbix[cpu_time,hostid] would return total REAL CPU time used in zabbix_agentd (not waiting time) (needs implementation on zabbix_agent side)
zabbix[time,hostid] would return total time from starting zabbix_agentd
Then, we can compute efficiency of zabbix_agent and serving. If we will see that cpu time used by zabix is high regarding to entire time agent is runing, something is bad. Monitoring process should not eat too much resources. We can make trigger if some item was getting too long or if entire zaabbix_agentd is eating too much.
I know it is not zabbix problem, it is user part of configuration, to not do bad things with monitored clients, but it would be nice to know which item was doing problems.
it would be nice to know how long time we spent in routines. Now I have problem with monitoring my netware server. When I start zabbix server, my netware server is under heavy load. I tried to find what happened and found it. It is novell specific but I think it should be repaired in zabbix too. Sorry for longer text

When zabbix server threads tries to fetch informations, it contacts agent and wait for timeout. It is normal. But I looked to log and I saw that zabbix serves tries to fetch same information more times. It can be problem. Especially, some queries are cpu expensive and I configured to fetch them each 600secs but when client goes up, it tries to fetch this information six or more times in short time (1 min). I think it is due to more threads doing same thing ? Maybe there should be some limit to realy not fetch same information in more threads.
Next suggestion, which belongs here, is that it would be nice to know statistics about data fetching. I know that it is possible to make analyze from debugging output of zabbix_server (I will do this for my purposes). But I have no time spent in sql statements. Maybe
zabbix_log( LOG_LEVEL_DEBUG, "End of query:%s",query);
could be in db.c just before leaving DBselect* and DBthread* functions.
To store this informations in db if user want: (it is only idea..)
zabbix[conn_time,itemid] would return last time needet to connect to server for given item
zabbix[proc_time,itemid] would return time used to fetch information
zabbix[cpu_time,hostid] would return total REAL CPU time used in zabbix_agentd (not waiting time) (needs implementation on zabbix_agent side)
zabbix[time,hostid] would return total time from starting zabbix_agentd
Then, we can compute efficiency of zabbix_agent and serving. If we will see that cpu time used by zabix is high regarding to entire time agent is runing, something is bad. Monitoring process should not eat too much resources. We can make trigger if some item was getting too long or if entire zaabbix_agentd is eating too much.
I know it is not zabbix problem, it is user part of configuration, to not do bad things with monitored clients, but it would be nice to know which item was doing problems.