module_wait_timeout lets the user specify the timeout passed to
WaitForSingleObject (in milliseconds). Lowering it can greatly improve
performance when the executed command generates a lot of output.
Ref. pandora_enterprise#7248.
* modules/pandora_module.h
modules/pandora_module_factory.cc
modules/pandora_module.cc: Added several new module fields
to the XML
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@7154 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.cc: Default to generic_data if no module_type
is not set.
* installer/pandora.mpi: Remove the util directory from the PATH when
uninstalling.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@6038 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module_perfcounter.cc,
modules/pandora_module_perfcounter.h: Use MinrGW's pdh.h
instead of our own definitions.
* modules/pandora_module.cc: Fixed a bug in pre-conditions that led to an
infinite loop.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@5257 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* windows/pandora_wmi.cc: Removed some debugging messages.
* modules/pandora_module.h,
modules/pandora_module.cc,
pandora_windows_service.cc: Fixed pre-conditions (were not working
properly).
* modules/pandora_module_regexp.cc: Improved file status detection and
small fixes.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@5247 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.h,
modules/pandora_module_exec.cc,
modules/pandora_module_exec.h,
modules/pandora_module_list.cc,
modules/pandora_module_factory.cc,
modules/pandora_module.cc,
Makefile.am: Added native ping and SNMP get modules that wrap the
calls to ping.exe and snmpget.exe.
* modules/pandora_module_ping.h,
modules/pandora_module_snmpget.h,
modules/pandora_module_ping.cc,
modules/pandora_module_snmpget.cc: Added to repository. Ping and
SNMP get modules.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@5203 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.h,
modules/pandora_module_factory.cc,
modules/pandora_module.cc: Set additional module configuration
parameters from the XML.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4572 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* win32/pandora_windows_service.cc
win32/modules/pandora_module.cc
win32/modules/pandora_module.h
win32/modules/pandora_module_factory.cc
unix/pandora_agent: Allow the windows and unix agent to include preconditions on modules.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4474 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* win32/modules/pandora_module.h,
win32/modules/pandora_module_factory.cc,
win32/modules/pandora_module.cc,
unix/pandora_agent,
shellscript/linux/pandora_agent: Set the module min, max and
post_process in the XML data file.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4036 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* unix/pandora_agent, win32/modules/pandora_module.cc: Added
module_interval information to the data XML.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3260 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.cc: Free the collection if it can not
be added to the list.
* Makefile.am: Use -static-libgcc to remove the dependency on
libgcc_s_sjlj-1.dll.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3101 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.cc: Changed sscanf format strings. They did
not seem to work well in native Windows.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3092 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.h, modules/pandora_module_factory.cc,
modules/pandora_module.cc, pandora_windows_service.cc: Added the
module_cron feature to schedule modules using a cron-like syntax and
some small fixes.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2993 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.h, modules/pandora_module_factory.cc,
modules/pandora_module.cc, pandora_windows_service.cc: Added the
module_condition feature. See http://openideas.info/wiki/ for more
information.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2956 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* windows/pandora_wmi.cc: getDiskFreeSpacePercent should not return
any value if the drive does not exist. Fixed.
* modules/pandora_module.h, modules/pandora_module_factory.cc,
modules/pandora_module.cc, pandora_windows_service.cc: Added support
for saving the value of a module as an environment variable.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2935 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* debug_new.h, fast_mutex.h,
debug_new.cpp, static_assert.h: Added to repository. Wu Yongwei's
memory leak detection tool (part of Nvwa). Only compiled when
debugging is enabled.
* bin/util/tentacle_client.exe: Added to repository. Tentacle client
needed to build the installer.
* installer/pandora_2.0.mpi: moved to installer/pandora.mpi. Updated.
The installer can now be built directly from the installer
subdirectory.
* configure.in, Makefile.am, autogen.sh: Created a proper
configure.in and Makefile.am. The agent can now be cross-compiled
from Linux :-D
* bin/pandora_agent.conf: Fixed. A local configuration had been
uploaded.
* pandora_windows_service.h,pandora_windows_service.cc,
udp_server/udp_server.cc, udp_server/udp_server.h: Properly shutdown
the UDP server.
* modules/pandora_module_regexp.cc,
modules/pandora_module_inventory.cc,
modules/pandora_module_factory.cc,
modules/pandora_module.cc, pandora_strutils.cc,
pandora.h, pandora.cc: Fixed a couple of memory leaks. Small changes
to avoid compile warnings when cross-compiling from Linux.
* windows_service.cc: Removed the interactive service flag to avoid
'black windows'.
* main.cc: Include the memory leak detection tool if debugging is
enabled.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1966 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* windows/pandora_wmi.cc, windows/pandora_wmi.h: Added functions for the
new modules. Removed old logevent functions.
* pandora_windows_service.h, pandora_windows_service.cc: Added support
for data file buffering and startup delay.
* modules/pandora_module_logevent.cc, modules/pandora_module_logevent.h:
Rewritten to retrieve event log data using the PDH interface instead
of WMI (was too slow).
* modules/pandora_module_tcpcheck.cc, modules/pandora_module_tcpcheck.h,
modules/pandora_module_regexp.cc, modules/pandora_module_regexp.h,
modules/pandora_module_perfcounter.cc,
modules/pandora_module_perfcounter.h,
modules/pandora_module_freedisk_percent.cc,
modules/pandora_module_freedisk_percent.h,
modules/pandora_module_freememory_percent.cc,
modules/pandora_module_freememory_percent.h: Added to repository.
New modules, see http://openideas.info/wiki/.
* modules/pandora_module.h, modules/pandora_module.cc,
modules/pandora_module_factory.cc, modules/pandora_module_list.cc:
Added support for the new modules.
* bin/pandora_agent.conf: Included configuration examples for the new
modules.
* PandoraAgent.dev: Updated to compile the new modules.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1707 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* win32/modules/pandora_module.h,
win32/modules/pandora_module_factory.cc,
win32/modules/pandora_module.cc: Added support for async data types.
* win32/modules/pandora_module_proc.cc: Removed unnecessary call
to Pandora_Wmi::runProgram.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1398 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_windows_service.cc: Removed debug output. Release mutex on
sendXml()
* modules/pandora_module.[cc,h]: Save latest output in a new property.
It's used on generic_proc modules to check the value better.
* modules/pandora_module_proc.[cc,h]: Added support for asynchronous
mode. It checks process in a separeted thread and report the status
quicker. Added getProcessName()
* modules/pandora_module_service.cc: Style correction. Removed an
indentation level.
* windows/pandora_windows_info.[cc,h]: Added getProcessHandles() to
get a list of handles of a running process, giving the process name.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1270 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* modules/pandora_module.[cc,h]: Added an async property. Added
getLatestOutput() to get the latest output of a module.
* modules/pandora_module_factory.cc: Parse async token in modules.
* modules/pandora_module_list.[cc,h]: It can create empty lists now
and add modules using new addModule() function.
* modules/pandora_module_service.[cc,h]: Added an async thread to
watch services events and track services status changes quickly and
asynchronously.
* windows/pandora_wmi.cc: Style correction.
* pandora_windows_service.[cc,h]: Pandora Windows service object is
now single instance, so the instance to the running service can be
accessed anywhere (useful in async threads). The XML generation and
sending process has been moved to a new function called sendXml()
which is thread-safe.
* windows_service.h: Some properties are now protected instead of
public to make it easier the singleton pattern in child classes.
* main.cc: Adopted to singleton pattern in Pandora windows service.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1268 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* win32/pandora_windows_service.cc: Small fixes.
* win32/modules/pandora_module.cc: time() and localtime() are used
instead of GetSystemTime().
* win32/pandora.h: Changed all instances of "Pandora" to
"Pandora FMS".
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@989 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* win32/modules/pandora_module.cc: Fixed a bug that made the agent
crash when a module returned data of the wrong type.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@966 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f