source: nscp/trunk/changelog @ 34f5502

Last change on this file since 34f5502 was 34f5502, checked in by Michael Medin <michael@…>, 5 years ago

+ Added propper output handling to process subsystem (now you can execute programs tat return "much" data.

+ Added select support for SSL_write (now you can send "any amount of data" to the (SSL) socket.

Since check_nrpe doesn't do this it wont work in that end, but still...

  • Property mode set to 100644
File size: 23.3 KB
Line 
1TODO:
2 * Process times and similar ?
3 * Fix configuration GUI (low priority)
4 * Fix installer (after configuration UI)
5 * Add module for relaying events
6 * Add API for rehashing the daemon (or implement it the API is there but does nothing)
7
82008-02-18 MickeM
9 + Added propper output handling to process subsystem (now you can execute programs tat return "much" data.
10 + Added select support for SSL_write (now you can send "any amount of data" to the (SSL) socket.
11   Since check_nrpe doesn't do this it wont work in that end, but still...
12
132008-02-16 MickeM
14 + Refactored ExternalCommand handling so NRPE and new module does the same thing.
15
162008-02-14 MickeM
17 + Added so commands starting in host_ (NSCA Handlers) are sent as host-commands
18 * Fixed a copy constructor in NSCA Commands (now service checks are sent as service checks)
19
202008-02-13 MickeM
21 + Added string_length to [Settings] as well (used internally) for all "injected" buffers.
22 * Fixed issue with scripts result truncated efter 1024 chars
23    (now they return "all" output and thus you can use the NRPE settings I adde yesterday :)
24 + Added hostname setting to [NSCA] section (must have been braindead when I did not add it before)
25 + Added to NSCA truncates output when to long.
26
272008-02-12 MickeM
28 + Added new option for the [NRPE] section string_length which is the length of the NRPE strings
29   (notice you need to recompile the check_nrpe to match this value)
30 * Improved exception handling in the PDH collector (hopefully less deadlocks)
31
322008-02-11 MickeM
33 + Added encryption support for NSCA module (about half of the algorithms are avalible,
34     if someone wants to use one not available let me know, and I will try to add it)
35
362008-02-09 MickeM
37 + New module CheckExternalScripts to handle 1, external script (similar to the old NRPE but in its own module)
38   - Can Check batch/vbs/programs/*
39   - Works with NSCA module (if you don't want to have NRPE at the same time)
40   - Simpler syntax (discarded old and added new section for alias)
41   - Started to add "sample alias" to ease initial setup and give some nice ideas (please provide me with feedback on them)
42
432008-02-08 MickeM
44 + Added some more default catch handlers (on the "core" side of plugin-calls).
45
462008-02-07 MickeM
47 + Added default catch handlers to all wrapped plugin calls.
48
492008-02-05 MickeM
50 * Fixed issue with checkEventLog (sometimes you got the wrong message back)
51
522008-02-04 MickeM
53 *** Happy Birthday bogi!! :)
54 * Fixed issues with performance counter rendering (mainly checkDisk)
55
562008-02-03 MickeM
57 + Added encryption subsystem to NSCA module (still no mcrypt support, but at least you have "xor" and passwords)
58 + Added API for scripts to register commands
59 + Added command descriptions (for some modules)
60 * Fixed issue in NRPE that displayed a console window when running commands
61 * New improved "inject" dialog from the system tray
62   Lists available commands, and shows command descriptions and a lot of other improvements.
63 + Added an internal log windows that displays log in real-time.
64 + Fixed some issues with the dialog procs (should work smoother now, especially Termination)
65
662008-02-02 MickeM
67 * Might have fixed the "missing eventlog messages" problem.
68 + Added %count% parameter to syntax which (when used with unique) will display the number of hits for each message displayed.
69
702008-01-27 MickeM
71 * Fixed a memory-leak in format_time
72 * Fixed so time/date is displayed in "local time" (not UTC) for the eventlog check
73 + Added %message% to eventlog check. Will display the "proper formated eventlog message" as in the eventlog viewer.
74   For this to work you need to have the descriptions flag set
75   In short: /nrpe -H 192.168.0.147 -c checkEventLog -a truncate=1024 "syntax=%generated%: %message%" descriptions=true file=System MaxWarn=1 MaxCrit=1 filter+eventType==error filter+generated=\<12h filter=new filter=all filter=in
76 + Added option "unique" to CheckEventLog If this is present only unique errors will be returned.
77   The uniqueness is defined by event-log, event-source, event-id and event-category.
78
792007-12-16 MickeM
80 + A lot of new features in the LUA module only "arguments" missing (as well as exposing more of the API)
81 * Changed some exceptions that were thrown wrong
82
832007-12-11 MickeM
84 + Added support for index-lookups of PDH counters (hopefully *all* locale problems are now fixed (yeah right))
85
862007-12-10 MickeM
87 + Added initial draft for LUA module
88
892007-12-09 MickeM
90 + Added a check if the service is started when running with /test so you get a warning
91 + Improved the socket thread with:
92    * a default-catch
93    * If the socket fails to start we still wait for it to shut down (no error message)
94 + Added first version of the NSCA agent (NSCAgent.dll)
95   (no encryption support as of yet, but will come)
96
972007-12-04 MickeM
98 ! 0.3.0 Released
99
1002007-12-01 MickeM
101 * Fixed issue with date formating in FILEAGE
102
1032007-11-29 MickeM
104 * Fixed issue with date formating in FILEAGE
105
1062007-11-28 MickeM
107 ! 0.3.0 RC-1
108 * Fixed some UNICODE issues with process-listings
109 + Added an error message if the "detected" process enumeration method is not available.
110 + Fixed some more Unicode issues Password encrypt/decrypt: #107
111 * Fixed Unicode issues with "external programs" #109
112 * Fixed so default string for check_nt:s FILEAGE command is "delta" is 5 minutes ago (and not absolute ie. 1970...), Issue #39
113 + added support for  <date strings> to check_nt:s FILEAGE command, Issue #39
114    append: .<date string> if you want to use a "custom date" like so: ... -v FILEAGE -l c:\\windows,Date: %Y-%m-%d %H:%M:%S" -w 5 -c 6 ...
115    Only the above listed %<char> works, and default to 0 so might not be to pretty but works...
116
1172007-11-26 MickeM
118 + Fixed a socket issue (erroneously reported "Could not read NSClient packet from socket :(")
119 * More 2k5 build tweaks
120
1212007-11-23 MickeM
122 * Converted to Unicode (damn sometimes I **HATE** C++)
123 + Added support for escaping " on the /test syntax so now you can do: CheckWMI MaxCrit=3 "MinWarn=1" "Query:load=Select * from win32_Processor"
124
1252007-11-22 MickeM
126 * Fixed so the "default path" is correct even when running as a service (issue: #96)
127
1282007-11-21 MickeM
129 * Fixed process counter so checkProcState  now return the *correct* number (previously it was correct-1)
130 * Fixed some missing exceptions that were not caught
131 + Added "AliasCol" option to CheckWMIValue to allow a column to be used as "alias" for a result set:
132     CheckWMIValue -a "Query=select Caption, ThreadCount from Win32_Process" MaxWarn=50 MaxCrit=100 Check:threads=ThreadCount AliasCol=Caption
133    will give you: "System threads: 98 > warning, svchost.exe threads: 87 > warning"
134 - Removed  from SVN (as it is old and outdated and no longer used)
135
1362007-11-20 MickeM
137 + Added new option to CheckSystem to override detected language (force_language=0x0014)
138
1392007-11-19 MickeM
140 * Fixed a minor issue in reading registry keys
141 + Added -noboot option to startup used for running command line utilities without booting the client
142   "nsclient++ -noboot RemoteConfigruation ini2reg" for instance
143 + Added fall back to try <module> and <module>.dll if the module was not loaded (when running command lines)
144 * Migrated 2008 project files to new name and back ported to 2005 project files.
145
1462007-11-16 MickeM
147 * Fixed an NRPE issue I added when I improved the sockets_timeout (now SSL works as well :).
148 + Added sample VBS script and definitions
149
1502007-11-15 MickeM
151 * Improved error message when external NRPE command failles.
152
1532007-11-14 MickeM
154 + Added multi-line output support ( issue #91 )
155 * Improved error handling for external commands
156 * Fixed an issue with NRPE/NSClient socket-reading (introduced by the socket_timeout)
157 + Added an English fall back if "local" language PDH counters fail.
158
1592007-11-12 MickeM
160 + Added option to configure socket_timeouts (default is now 30 seconds) should (I hope) fix issue #85
161
1622007-11-11 MickeM
163 + Added option to configure the behavior of CheckService CheckAll (#64)
164
1652007-11-08 MickeM
166 + Added CheckWMIValue to check result-values from a WMI Query
167 * Changed so performance values are "collapsed" i.e. 75362115584 = 70.0G (#89)
168    If anyone don't want this let me know and I will make an option for it.
169
1702007-11-06 MickeM
171 + Added CLI interface to CheckWMI to check queries
172
1732007-11-04 MickeM
174 * Rewritten WMI handling as well as checks so things should be more useful now (cf. the wiki page for details)
175
1762007-10-29 MickeM
177 * Restructured build and include to work from CLI
178 + Started to add makefiles to build from CLI
179 + Added Finnish counters (#98)
180 * Fixed performance counter issue with check_nt (#99)
181 
1822007-10-06 MickeM
183 + Added auto-upda-te of versions and dates on build to make versions better updated.
184 + Fixed x64 build and cleanup a bit.
185
1862007-09-15 MickeM
187 + Added better error messages (now return codes are displayed as text). Not implemented all over yet but the infrastructure is there.
188
1892007-09-11 MickeM
190 + Added Dutch performance counters to counters.defs
191 + Added Spanish performance counters to counters.defs
192 + Added #69 [includes] directive to INI-file to include other files
193 * Fixed #75 (spelling issue)
194
1952007-06-23 MickeM
196 * Might have fixed #53 I was not able to get the problem locally but I have fixed the problem ias at op5 discovered at least...
197 * Fixed the "check memory" issues for real this time.
198 * Fixed problem with : in counter names #50 (anything starts with \ is considered a counter so if you use aliases with \ this will break things for you.
199
2002007-06-20 MickeM
201 * Fixed #24 crash in NSClient++.exe CheckSystem listpdh | debugpdh
202 * Fixed #62 Problems with CheckServiceState and services with spaces.
203
2042007-03-06 MickeM
205 ! 0.2.7 released
206
2072007-03-05 MickeM
208 * Fixed -v FILEAGE check_nt (NSClient) check.
209 * Added license agreement header to all files
210
2112007-03-04 MickeM
212 + Added script_dir option to NRPE section as well as some sample scripts in the scripts/
213   subdirectory. The script_dir will use all files in this directory as scripts for NRPE
214 + Added Japanese counters to counters.defs from patch (thanx!!!)
215
2162007-02-25 MickeM
217 + Added possibility to check many memory checks in one go, just stack type options.
218     type=paged type=physical etc...
219 * Fixed a performance check bug in the last nightly.
220 * Fixed a potential crash when a malformed check-file-age command was issued.
221 + Added support for more then and NSClient command
222 + Added net mask support to allowed_hosts (try with 192.168.0.1/24 and such)
223 
2242007-02-22 MickeM
225 + Added debug output to see if the socket is bound and/or has shutdown.
226 * Fixed a potential bug in the thread manager.
227 + Added configuration option for suppressing performance data to the NRPE section.
228   Set performance_data=0 to stop sending performance data to nagios
229 + New (better?) (simpler?) event log checking
230 + Added option to most commands (ignore-perf-data) to suppress performance data
231 + Added option CheckAll for checking all auto-start services to checkServiceState.
232   Also an exclude=<service> to exclude checking that.
233 * Fixed return syntax for PROCSTATE nsclient
234
2352007-02-21 MickeM
236 * Fixed "broken password check" (again) in NSClient listener (this time it is correct! :)
237
2382006-12-02 MickeM
239 + Managed to build so it works on NT 4.0 (SP6a) and W2K3
240 * Fixed "broken password check" in NSClient listener
241
2422006-11-18 MickeM
243 + Added support for empty NRPE checking (i.e.. chec_nrpe without a -c argument)
244 * Added error message when detected language is missing from counters.defs
245 + Added Swedish locale to counters.defs (yes, I switched to Swedish XP on my computer :)
246 * Fixed : (and possibly other problems) in counters when checking from check_nt (via NSCLient protocol)
247 + Added CheckAllExcept to CheckDrive to check all except the specified drives.
248 * Fixed a display error in the various size functions (1000-1024 byte was displayed incorrectly)
249
2502006-10-05 MickeM
251 * Yayyy!!! (first fix in a looong while :)
252 * Fixed a W2k3 "bug" (actually just an incorrect error) but the:
253   "e .\PDHCollector.cpp(130) Failed to query performance counters..." is no more...
254 + Added option to NRPE/NSClient section to not-cache host names (for dyndns etc.)
255   NOTICE this is "not safe" really in so far as someone might hi-jack your DNS and quickly gain
256   access to your nagios box (probably only a theoretical problem but hey! :)
257   NOTICE this is "slow" since all hosts in the list are "looked up" each time you get a NRPE/NSClient
258   request it will be "slow" but I think it is not that much of a problem really.
259   NOTICE I don't have the possibility to test this so feel free to report if it works and if it doesn't.
260   Set cache_allowed_hosts=0 to disable host cache
261
2622006-04-04 MickeM
263 * Fixed a few more bugs to the INI/REG readers
264
2652006-04-02 MickeM
266 * Could all magicians stop trying to kill me?
267   *Please* i don't like to die!
268
2692006-03-31 MickeM
270 * Damn necromancers! stop 0wning my ass all the time!
271 
2722006-03-29 MickeM
273 + Added API for saving/reading settings
274 
2752006-03-28 MickeM
276 + Added REG/INI parsers
277 * *NOTICE* You need to add an option (use_file=1) to your nsc.ini file or new builds wont work.
278
2792006-03-25 MickeM
280 * Oblivion f*cking roxx!
281
2822006-03-02 MickeM
283 * Fixed bug in INI-file reader (memory leak)
284
2852006-03-01 MickeM
286 * Fixed bug in CheckFile (now dates work correctly)
287
2882006-02-26 MickeM
289 + Added syntax option to CheckFile (%filename%, %creation%, %access%, %write%, %size%).
290
2912006-02-25 MickeM
292 * Fixed Sections problem (now sections can be any size)
293 + Added bind_to_address option to both NRPE and NSClient section in the INI file.
294   Allows you to bind the listener to a specific IP address (only dotted number not host name).
295   This might break things as I had to do some internal rewrite of the Socket classes so be careful :)
296 * Disabled default-debug logging (as things are fairly stable, you can still enable it by using debug=1 in the NSC:ini file)
297 * "Fixed" socket backlog to use "max responsible value" as opposed to "10" if no value is specified.
298 + Added option socket_back_log to both NRPE and NSClient section that allows you to tweak the "back-log" of incoming connections to keep.
299   This is an advanced setting and should not be used. If you get "connection refused" when running many client this might be something you want to tweak though.
300   And if you then start getting "Socket timeout" you might wanna tweak the timeout value as well because larger value here means it takes "longer" to process a socket.
301 - I have looked into the event log problem and dates seem to work here so if anyone still have problems (use the syntax option to debug) let me know.
302 * Moved listpdh and debugpdh into the CheckSystem module
303 * Removed PDH dependencies from "core exe" means you can run NSClient++ without PDH (though you cant use the CheckSystem module)
304 
3052006-02-2? MickeM
306 + Added new Interface for Modules (NSCommandLineExec that allows modules to execute things give from command line.
307   Syntax is NSClient++ <module name> <command> [arguments] and if a module doesn't support this it is simply ignored.
308 + Added new install/uninstall command to SystemTray module:
309   NSClient++.exe SystemTray install
310   NSClient++.exe SystemTray uninstall
311   That will install/uninstall the system tray module this sets the "Allow Service to Interact with Desktop" flag for the service.
312 * Removed the "Allow Service to Interact with Desktop" flag from the /install option so that it no longer defaults to on (see commands to set this above).
313 * Fixed so checkProcess isn't case sensitive.
314 * Added (not finished) syntax option to event log checker to format the outputted data
315
3162006-02-12 MickeM
317 + Added support for host name resolve to allowed_hosts
318
3192006-02-08 MickeM
320 ! Fixed filter-eventID in EventLog module (now works for all IDs regardless of severity state)
321 + Added new filters to EventLog (filter-severity that can filter based on event severity success, error, warning, informational)
322
3232006-02-07 MickeM
324 + Added new filter option to eventlog filter-eventID
325 + Added new operator to all numeric filters in:number,number,... etc. (for instance filter-eventID=in:123,456,789 to check for lists.
326
3272006-02-05 MickeM
328 + Added CheckFile check command
329   This new command (in development) will allow various file checks such as age, size, date, etc on single or multiple files.
330 + Added FILEAGE support to NSClient
331 + Started to convert the web page to WIKI
332 
3332006-01-21 MickeM
334 + Added WMI Check module (early alpha)
335   This is an extremely early alpha more to see if there is an interest and how to progress with it.
336   To use the WMI module enable the WMICheck.dll (nsc.ini) and then run the following check:
337   CheckWMI MaxWarn=10 MaxCrit=15 "Query:load=Select LoadPercentage from win32_Processor"
338   The Max* are as every other check and sets limits.
339   The Query works similarly to other check commands i.e.. Query:<name>=<WMI query>
340   So any other WMI query should work (notice this is experimental and not stable and has virtually
341   no error handling so it is likely to crash nsclient if you ask anything "non working".)
342   I would *really* *really* like to get feedback on how to expand this concept to work better so feel free to come with feedback.
343  * Fixed NT4 /install (should work now!)
344
3452006-01-02 MickeM
346 * Fixed ChangeServiceConfig2 on NT4
347 + Added support for more then 4GB memory (8GB?)
348   Since I don't have this much memory this needs to be verified...
349 * Fixed syntax of performance data
350
3512005-09-24 MickeM
352 * Fixed memory size bug (free and used were swapped)
353
3542005-09-20 MickeM
355 + Added option to debug all PDH counters /debugpdh
356
3572005-09-17 MickeM
358 + Added support for checking service by display name
359
3602005-09-03 MickeM
361 * First off, sorry for lack of updates, but was on vacation :)
362 + Added ShowAll=long to CPULoad
363 + Added several new types to checkMem (type=paged, type=physical, type=page, type=virtual)
364
3652005-07-31 MickeM
366 + /install now sets the service to autostart
367 * Did some cleanup of minor code sections
368 * (done before but not reported i think) /listpdh option added to list all PDH counters (nsclient++ /listpdh)
369 + Added service description
370 * Event log reworked (again) this time I hope it is better (and even useful, but syntax has changed)
371
3722005-07-26 MickeM
373 + Added support for ShowAll=long (to show long and short info, only applies to some areas, but available everywhere)
374 + Extended Drive and memory check syntax to facilitate both Free and Used space checks: MaxWarnFree / MaxWarnUsed etc)
375
3762005-07-19 MickeM
377 * Changed thread API to use _creatthreadex as opposed to _creatthread (works better now!)
378 * Fixed UNKNOWN return code (was 4 should have been 3)
379
3802005-07-16 MickeM
381 * Fixed drive checks from NSClient
382
3832005-07-11 MickeM
384 * *ALOT* of bug fixes and enhancements all checking code has been centralized and rewritten also my internal check scripts
385   have been extended to check a lot more things.
386   *NOTICE* that EventLog has not been upgraded yet neither has the documentation.
387 + Added MaxWarnCount / MinWarnCount to checkProcState to check number of processes running
388
3892005-06-09 MickeM
390 * Escapes " in NRPE commands in the NSC.ini
391
3922005-06-05 MickeM
393 * Created configuration interface (not released yet)
394
3952005-06-03 MickeM
396 * Created interactive installer (not released yet)
397
3982005-06-02 MickeM
399 * CheckEventLog reworked...
400
4012005-06-01 MickeM
402 * CheckSystem auto detects windows version and language.
403
4042005-05-29 MickeM
405 * Fixed PROCSTATE and SERVICESTATE return state.
406 + Added support for individual size in CheckDriveSize and CheckFileSize (size has to be specified before a drive/path)
407 * Fixed performance data for drives (and possibly other places)
408
4092005-05-23 MickeM
410 + Added obfuscated password support
411 + Added some more debug info on commands (return code, and input args)
412 + Added some more comments to the NSC.ini
413 + Added central password "override"
414 + Added central "host override"
415 + Fixed bug with external commands always getting WARNING state
416
4172005-05-22 MickeM
418 + Added debug output for command
419 + Added timestamps for log-to-file (date_mask to configure format)
420 + Added support for "no password" with check_nt
421 + Added log of bad password on NSClient requests.
422 * Some threading issues fixed (I hate threading :)
423
4242005-05-19 MickeM
425 * Verified NT4 compatibility
426
4272005-05-18 MickeM
428 * Fixed bug in NSC.ini (section title for Check System was wrong)
429 + Added multitasking for plug-ins (now two plug-ins can handle requests simultaneously)
430 * Fixed some minor issues here and there
431
4322005-05-15 MickeM
433 + Added NRPE support for checkCounter
434 + Updated documentation
435 * Make check commands ignore case
436 + Added CheckHelpers module to alter the result of various check and similar things
437
4382005-05-14 MickeM
439 + Added support for Volumes (CheckDisk)
440 + Added support for checking all drives of a certain kind
441 + Added support for altering filter (makes it possible to check removable drives)
442 + Created web page and better documentation
443
4442005-04-20 MickeM
445 + Added multitasking to socket listener (it can now handle multiple connections)
446 * Fixed bug in NSClientListener now "seqv" in check_nt shouldn't happen.
447 + Added COUNTER support to NSClient and CheckSystem
448
4492005-04-19 MickeM
450 + Added SSL support
451 + Added a lot of new options
452 + Added documentation
453 * Renamed and restructured NSCLientCompat to CheckSystem
454 * *ALOT* of fixes all over
455 : We are now starting to get to something that is "stable"
456 : This means that soon you might actually be able to use this.
457 
4582005-03-28 MickeM
459 * Changed the Thread class a bit (mutex -> signal, and CreatThread does not return the instance)
460 * Moved settings "keys" fro NRPE to config.h
461 * Changed build options (added Distribution) which builds a zip file under ./dist (requires 7z installed)
462 * Minor tweaks to error/debug logging and small fixes "here and there"
463
4642005-03-26 MickeM
465 + NRPE Support (very basic, no encryption, and nothing fancy)
466 * Socket classes rewritten
467 + Added NSCModuleHelper::getSettingsSection to the API
468
4692005-03-22 MickeM
470 * Fixed NSClientListener return codes for basic commands
471 * Extracted arrayBuffer code into new files under /include
472 * Minor tweaks in the API (fixed minor issues)
473 + Added some basic "tests" to a few commands (getToken, and arrayBuffer related)
474
4752005-03-21 MickeM
476 * Fixed BUG in inject command (now things should "work" again, but far from stable)
477 + Added NRPE return code
478 * Fixed some return states to NSClientListener (not verified yet, but soon they will be back in order :)
479
4802005-03-20 MickeM
481 * Fundamental API changes (due to NRPE compatibility)
482   - HandleCommand has changed
483   - Inject has changed
484   - Most API calls have new "return codes" (typedef:ed INT to allow for return code compiler checks)
485   - A lot of the old return codes have changed
486 + Preliminary NRPE support (can parse and execute incoming requests, cant return data yet, and no encryption)
487 + New SimpleSocket in include/ will be used as base class for Listeners
488 * A lot of rewrite to the NSC API
489
4902005-03-19 MickeM
491 * Re factored out NSCLient Listener as a separate module
492 + Added initial NRPE listener module (not yet implemented only a shell)
493 * Changed Module API (Inject function has new syntax)
494 + Added some tokenizer function to charEx
495 + Added new wrapper function to inject Command
496 * Minor changes in relation to refactor work
497
4982005-03-01 MickeM
499 * Improved thread safety in Core
500 + Added exception handling and logging in PDH code
501 * Various fixes all over the place
502 + New module for check size of files/directories
503 * Changed build to Dynamic link
504 * Added regular expression support for EventLog checker
505
5062005-02-22 MickeM
507 + Added documentation
508
5092005-02-17 MickeM
510 * NSClient issues fixed
511 * System Tray issues fixed
512
5132005-02-14 MickeM
514 * Initial SourceForge release
Note: See TracBrowser for help on using the repository browser.