Hi,
I have a Zabbix 1.8.2 installation on a Centos 5.5 system.
Database is PostgreSql
I have it set up to monitor two websites, and to do discovery on a couple of networks.
I came in this morning, and saw that Zabbix is causing the server to have a very high load, and very high IO. I turned on logging on the database, and see that Zabbix is generating between 5 and 20 queries a second. The IO on the database is causing the disk to have constant transfer of between 12 and 20 megabytes/second.
I'm assuming that there is a parameter I can change, but I have no idea since I'm just learning it. I'm pasted a few entries from the PostgreSql log below.
Any ideas?
Thanks in advance
JBB
LOG: statement: select distinct t.triggerid,t.expression,t.description,t.url,t.com ments,t.status,t.value,t.priority,t.type,t.error,f .itemid from triggers t,functions f,items i where i.status not in (3) and i.itemid=f.itemid and t.status=0 and f.triggerid=t.triggerid and f.itemid in (22563,22461,22453,22454,22455,22516,22517,22518,2 2549,22519,22550,22520,22521,22431,22522)
LOG: statement: select distinct i.itemid,i.key_,h.host,h.port,i.delay,i.descriptio n,i.type,h.useip,h.ip,i.history,i.lastvalue,i.prev value,i.hostid,i.value_type,i.delta,i.prevorgvalue ,i.lastclock,i.units,i.multiplier,i.formula,i.stat us,i.valuemapid,h.dns,i.trends,i.lastlogsize,i.dat a_type,i.mtime from hosts h,items i, functions f where h.hostid=i.hostid and h.status=0 and i.status=0 and f.function in ('nodata','date','dayofweek','time','now') and i.itemid=f.itemid and (h.maintenance_status=0 or h.maintenance_type=0) and h.hostid between 000000000000000 and 099999999999999
LOG: statement: begin;
LOG: statement: select dh.dhostid,dh.status,dh.lastup,dh.lastdown from dhosts dh,dservices ds where ds.dhostid=dh.dhostid and dh.druleid=2 and ds.ip='10.11.1.170' order by dh.dhostid
LOG: statement: commit;
LOG: statement: select t.httptestid,t.name,t.applicationid,t.nextcheck,t. status,t.delay,t.macros,t.agent,t.authentication,t .http_user,t.http_password from httptest t,applications a,hosts h where t.applicationid=a.applicationid and a.hostid=h.hostid and t.nextcheck<=1280769151 and mod(t.httptestid,1)=0 and t.status=0 and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0) and t.httptestid between 000000000000000 and 099999999999999
LOG: statement: select escalationid,actionid,triggerid,eventid,r_eventid, esc_step,status from escalations where status in (0,1) and nextcheck<=1280769151 and escalationid between 000000000000000 and 099999999999999
LOG: statement: select count(*),min(t.nextcheck) from httptest t,applications a,hosts h where t.applicationid=a.applicationid and a.hostid=h.hostid and mod(t.httptestid,1)=0 and t.status=0 and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0) and t.httptestid between 000000000000000 and 099999999999999
I have a Zabbix 1.8.2 installation on a Centos 5.5 system.
Database is PostgreSql
I have it set up to monitor two websites, and to do discovery on a couple of networks.
I came in this morning, and saw that Zabbix is causing the server to have a very high load, and very high IO. I turned on logging on the database, and see that Zabbix is generating between 5 and 20 queries a second. The IO on the database is causing the disk to have constant transfer of between 12 and 20 megabytes/second.
I'm assuming that there is a parameter I can change, but I have no idea since I'm just learning it. I'm pasted a few entries from the PostgreSql log below.
Any ideas?
Thanks in advance
JBB
LOG: statement: select distinct t.triggerid,t.expression,t.description,t.url,t.com ments,t.status,t.value,t.priority,t.type,t.error,f .itemid from triggers t,functions f,items i where i.status not in (3) and i.itemid=f.itemid and t.status=0 and f.triggerid=t.triggerid and f.itemid in (22563,22461,22453,22454,22455,22516,22517,22518,2 2549,22519,22550,22520,22521,22431,22522)
LOG: statement: select distinct i.itemid,i.key_,h.host,h.port,i.delay,i.descriptio n,i.type,h.useip,h.ip,i.history,i.lastvalue,i.prev value,i.hostid,i.value_type,i.delta,i.prevorgvalue ,i.lastclock,i.units,i.multiplier,i.formula,i.stat us,i.valuemapid,h.dns,i.trends,i.lastlogsize,i.dat a_type,i.mtime from hosts h,items i, functions f where h.hostid=i.hostid and h.status=0 and i.status=0 and f.function in ('nodata','date','dayofweek','time','now') and i.itemid=f.itemid and (h.maintenance_status=0 or h.maintenance_type=0) and h.hostid between 000000000000000 and 099999999999999
LOG: statement: begin;
LOG: statement: select dh.dhostid,dh.status,dh.lastup,dh.lastdown from dhosts dh,dservices ds where ds.dhostid=dh.dhostid and dh.druleid=2 and ds.ip='10.11.1.170' order by dh.dhostid
LOG: statement: commit;
LOG: statement: select t.httptestid,t.name,t.applicationid,t.nextcheck,t. status,t.delay,t.macros,t.agent,t.authentication,t .http_user,t.http_password from httptest t,applications a,hosts h where t.applicationid=a.applicationid and a.hostid=h.hostid and t.nextcheck<=1280769151 and mod(t.httptestid,1)=0 and t.status=0 and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0) and t.httptestid between 000000000000000 and 099999999999999
LOG: statement: select escalationid,actionid,triggerid,eventid,r_eventid, esc_step,status from escalations where status in (0,1) and nextcheck<=1280769151 and escalationid between 000000000000000 and 099999999999999
LOG: statement: select count(*),min(t.nextcheck) from httptest t,applications a,hosts h where t.applicationid=a.applicationid and a.hostid=h.hostid and mod(t.httptestid,1)=0 and t.status=0 and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0) and t.httptestid between 000000000000000 and 099999999999999
Comment