1.0:

 - navigation bar for all graphs and screens
 - make support for "Clone"
 - add SNMP-based template

LATER:

 - zabbix to write log to the item (for example: log when item becomes unsupported)
 - support for UDP-based checks (DNS, etc)
 - 'clone' for graphs and screens
 - add screens and graphs to host templates
 - preserve selected host group between different screens (trigger maintenance, host maintenance)
 - add zabbix[unixtime] and lastupdate() and tick() to get rid of nodata()
 - check return code for alert scripts
 - zabbix_agentd to support processor load, swap[*] and memory[*] onder AIX
 - make possible passing of parameters to user script for UserParameters
 like param[*]
 - make session expiration time configurable in config.php
 - mess with user groups when running under root
 - support for PREFIX/zabbix/etc (configuration files)
 - trapper item. Source->Alarms do not grow when last status is unknown for
latest trigger (item type  = TRAPPER)
 - SNMP traps. Condition to switch expression off. New function which would return
 status of the trigger could help. 

 - when zabbix cannot evaluate expression it does not change status to UNKNOWN but adds ALARM (UNKNOWN) 
 - preset time for graphs

 - finish src/zabbix_snmptrapper
 - links to Zabbix frontend in alert emails
 - strings items for graphs
 - support of '-' in trigger expressions (...>-1)
 - UserParameter does not appear in the log
 - add support for agent forwarding (proxy)
 - ability to add a library of  userwritten c-functions with dlopen/dlsym to
the agent with a predefined API that can return values to suckerd (for both 
suckerd and agentd)
 - monitoring of log files
 - escalation
 - agents to execute command
 - add complete support for SNMP trapping
 - zabbix_trapperd does not start if PostgreSQL and DBConnectOnEach=1

 - monitoring of log files
 - [10] Refresh stop ability. At least for graphs and triggers being selected.
 - [10] IT Services. Show downtimes for weeks.
 - [10] IT Services. User view, show algorithm.
 - [10] BUG. When adding new service, service name is wrong.
 - [10] IT Services. SLA for a period of time only (09:00-18:00)

 - monitoring of Windows event log

SECURITY:

 - get rid of strcpy, strncpy, sprintf, strcat ,etc

LS:

 - update trigger value immediately after add or update
 - graphs. Dobavljatj item so smescheniem vo vremeni
 - check permissions for zabbix_agentd when started under root
 - add item to group (not to all)
 - update host from template

change(N) - raznica mezhdu poslednim i na N vremeni ranee poluchennim
znacheniem;
abschange(N) = abs(change(N));

trend(N) - linejnaja aproksimacija sled.znachenija po interval vremeni N;
trend(N,M) - tozhe, no ne sled.znachenie, a vpered na interval vremeni M;

!!!!! kstati bilo-bi neploho pozvolitj poljzovatsja ne toljko intervalom
vremeni kak argumentom funkcij,
no i ispoljzovatj kolichestvo otscetov, tipa srednee za poslednie 5
scitivanij !!!!!
* k primeru argument 5 oznachhaet pjatj sekund, a #5 - pjatj izmerenii !!!

nu i massu matematicheskih mozhno - dlja super-advanced chuvakov:
* SQRT, LOG, LOG10, trigonometricheskie, ...

 - show host groups in "Status of Triggers"
 - if 'Update', then default action (button 'Enter') must be Update
 - do not check SNMP port existance if Item is not SNMP
 - host groups (delete, rename)
 - add item to host group
 - add descriptions to items
 - link host (group) to template

graphs:

 - min value (0 or automatic)
 - customisation of font size
 - link items to show them in one graph (network in/out) 

 - snmp oid symbolic representation
 - periodically check unsupported items (NxInterval). Can be configurable.
 - Latest values->Host->[Show not monitored]

HP:

 - use profiles instead of passing parameters using POST
 - add threshold,min,max line for user-defined graphs
 - 
Vel viens wishlists ir pie "IT Services", pielikt pie 
/~zabbix/report3.php?serviceid=1&year=2003

 Ka ir reziims, ka paraada visus downtime attieciigajaa meenesii (vai gadaa/nedeelaa).
(Tipa  : time  - subservice/trigers - priority - ...)



 - [3] Windows event log checking.
 - [4] Latest values. Link to page which shows list of all triggers-related
 to the item.
 - [4] users.php. Link to page which shows all actions defined for this user.
 - [5] Configuration of items/triggers. Add Select.
 - [7] SLA algorithm (A - 0%, B - 100% -> availability of AB = 50%)
 - [7] IT Service % must start at 01.01.20xx, not first day of the week
 - [7] ALARMS. Ability to select events by specifying date from/to.
 - [8] escalation (if trigger is ON 30 sec, send email to someone else)
 - [9] History of who and when changed trigger comment. As starting point: who and when
 did latest changes.
 - [9] ... the history to be used to see who did changes and who wrote specific parts
 of comments to know who is in charge for the instructions
 - [9] ... find outdated instructions to initiate its renewal (review)

LS:

 - daily weekly monthly graphs
 - detailed description for items

TOP PRIORITY:

 - fix update of 'status'. When added it never gets updated, if server is already unreachable.
 - pay attention to Solaris agent
 - better viewing of trigger dependencies
 - do not show "all" if no groups defined
 - add more checks for forms (check all possible wrong values)
 - check Rickard's active(?) agent
 - support of fetch_html[*]
 - restructure sources
 - support for automake
 - zabbix_agentd to support processor load, swap[*] and memory[*] onder AIX

BUGS:

 - add protection from IT Service looping

PERFORMANCE IMPROVEMENTS:

 - remove lastvalue, lastclock, prevvalue from table ITEMS
 - is there any need to update datta of table FUNCTIONS? Can it be done in memory only?

DIFFERENT TASKS:

 - better monitoring of log files
 - SNMP trapping
 - SNMP v3
 - auto-discovery
 - Native Windows GUI
 - distributed monitoring
 - audit log
 - backup/restore scripts for server. Backup all (DB, configs, etc).
 - IT Helpdesk
 - personalisation (refresh rate, graph size, default graph period, etc)
 - encryption
 - automated report generation
 - SNMP-walk in WEB interface
 - add UserParameter without restart of an agent
 - write white-paper
 - prepare Power Point presentation

TODO:

- Agent
 1. An API so that I can build and active agent into
    the centralized monitoring point of my application.
 2. max/min/average values during the poll pause along with last value to catch
CPU spikes otherwise invisible (have had these problems with BMC Patrol).
 3. Ability to add a library of  userwritten c-functions with dlopen/dlsym to
the agent with a predefined API that can return values to suckerd.

Not ready yet:

1. Monitoring of Windows (2000) services via SNMP
This is an extension I wrote based on your SNMP checker that scans through the Windows SNMP mib to check if a specified
+process is running. I thought it may be able to be used in a similar situation to the new SIMPLE check.

2. Basic schedule to monitor certain items during specified period.
I made changes to the PHP frontend and zabbix_sucker.c to enable the user to specify a time period (like between 9am-5pm) when
+the item should be checked.
(From: "Dave McCrudden" <dmccrudden@custcare.com.au>)


 - BUG. zabbix_sucker should accept parameter regardless of "\n" at the end of line 
 - get rid of long select lists in user forms 
 - do not send notifications at certain periods of time. Do not monitor services at certain periods of time.
 - decrease number of TCP connections between server and agent
 - add triggers for all hosts at once
 - check Rickard's multithreaded agent
 - check new Mariusz patches
 - add support for downtimes, user availablity, etc

HB:

 - BUG. history graph goes left
 - personalisation (refresh rate, graph size, default graph period, etc)

 - Tree like in old Zabbix
 - LDAP authorisation (should work with MSWindows LDAP)
 - Reports:
 - more customizable (graphs time range: 1 mont, etc)

WIN32 Agent:

* API for sub-agents
* Support for check_port[] parameter
* Support for check_service[] parameter
* Installation program
* Possibility to store configuration in registry
* Configuration tool (may be through MMC?)

 PLUS:

- Network discovery daemon (?)
- backup/restore scripts for server. Backup all (DB, configs, etc).
- Network topology database
- Automatic network map generation from topology database
- Support for MD5 checksums

 OTHER:

 - support for netload under other platforms
 - calculate MIN value for graphs (do not use '0')
 - make kstat structure local (instead of static)
 - collect network and other statistics using kstat()
 - apply Mariusz's patches
 - support for complex reports
 - support for check_service[samba]
 - ability to execute command on server monitored
 - support for OS X (network loads, disk loads)
 - check for function parameters in evaluate_simple_expression
 - update trigger status to UNKNOWN if cannot evaluate function 

 LATER:

 - setup demo site
 - different sound files for different severity
 - rename "Alerts" to "Notifications"
 - think about service node types (some nodes will automatically register
  problem)
 - restructure sources (no C files in include/, move some sources into lib, etc)
