* lib/PandoraFMS/DB.pm: Combined alerts are working again.
* bin/pandora_snmpconsole: Moved calcula_alerta_snmp to DB.pm so it
can be called from other modules.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1445 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_network: An important BUG discovered in SNMP call locking
mechanism. Now calls to SNMP are using exec to snmpget command. Much
faster due solved locking problems.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1440 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_db.pl: BUGFIX. DB Maintance was deleting data older than 24hr
since commit of 12th January!.
* pandora_wmi, pandora_network, pandora_plugin: Algorithm upgraded.
First are executed modules with less margin until be considered down and
modules with flag of manual execution.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1419 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_server: Fixed a typo in call to pandora_writestate() who
makes server exiting with "Can't call method 'prepare'". That affects only
to keepalive modules. Thanks to Esben for reporting.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1408 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server_upgrade: Script to upgrade to latest version
Pandora FMS server components / code.
* bin/panora_network: Banner on load are rendered.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1375 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm: Take into account the alert option
'matches_value'.
* bin/pandora_server: Added support for forced alert execution.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1373 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* Config.pm: Now works without breaking the server :-). Show verbose info
only when verbosity enabled (>4).
* pandora_server: more issues with verbosity level. Fixed a typo on
management of async_proc moduletypes. Freeing a hash reference on keepalive
solves a memleak.
* DB.pm: Converting to the same float when comparing two numbers.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1368 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_wmi, pandora_plugin, pandora_recon: Updates merged from
2.0 version. Different small fixes and improved performance.
* DB.pm: Support for fixes in wmi/plugin server. Call of enterprise
function pandora_mcast_change_report() is done now on real status change
code not in alert. Added update_on_error() function to update status table
when remote modules cannot init (update last_try field to avoid unnecesary
attempts).
* Config.pm: Build update, some stuff cleaned. Server startup info is show
only when verbose level is activated.
* pandora_network: Startup messages are not shown if verbose < 5.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1358 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm: Partially rewrote the alert core to support the
new DB schemas. Compound alerts have been temporarily disabled.
Rewrote alert macro substitution code.
* lib/PandoraFMS/Tools.pm,
bin/pandora_snmpconsole: Aesthetic changes to enterprise code.
* lib/PandoraFMS/Config.pm,
bin/pandora_network: Added support for UDP multicast status reports
(enterprise version).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1347 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* DB.pm: Solved an invalid reference to hash variable affecting to
postprocess calculation.
* pandora_recon: Now is compatible with the latest changes. Solved a
problem in eval() block. Also fixed a old bug mixing network profiles.
This fix will be ported to stable version ASAP.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1342 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This is a MAJOR upgrade that _BREAK_ your current 2.1 trunk version.
Needs an upgrade of DB Schema. At this time no conversion tool has been
provided. Libs and console needs also to be re-deployed.
* pandora_server: KeepAlive module is now processed OUTSIDE
pandora_lastagentcontact() function, in it's own function. This makes that
keepalive only be refreshed on agent data, not network. This should
make keepalive works as "agent down detector" in a definitive way, also
it's an important performance improvement operation.
* pandora_db.pl: Performance improvements. If compact days = 0 skip.
Compactation and delete needs to be improved in speed.
* DB.pm: Added more generic DB access functions (db_insert, db_update,
db_delete). Major rewrite of pandora_writestate(). Now uses three different
values for status (NORMAL, WARNING, CRITICAL) and manage all modules like
old monitor modules. Uses new fields for control event flip/flop with a
counter. Also uses new WARNING/CRITICAL thresholds to calculate in store-
time the status.
pandora_accessupdate() Function now uses only utimestamp. Tagente_datos and
tagente_datos_string has been updated and do not use timestamp (string) and
id_agent index anymore. Big improvement has been noticed in performance
tests after this change !. tagente_datos_inc has been modified also.
pandora_writedata() needs a lot of improvement :(. Added support for
modules without history.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1325 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_recon: Added a timeout to pandora_getparent(). The call
to traceroute() would hang despite query_timeout being set.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1302 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_snmpconsole: Added support for extended trap information
(enterprise version).
* bin/pandora_network: Updated function header.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1215 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Config.pm,
lib/PandoraFMS/DB.pm,
lib/PandoraFMS/Tools.pm,
bin/pandora_snmpconsole: Added support for enterprise version
features.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1214 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_snmpconsole: Trap SNMP forward not will included in
this version, moved to 2.1 roadmap.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1138 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_snmpconsole: Added support to get custom value,
custom type and custom OID. Code for trap2agent forward feature
not fully implemented, don't work yet, need finish.
* util/pandora_db.pl: Now delete also events and session information.
String data is using utimestamp to purge (faster!).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1137 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_package_installer: New script for install binary
PandoraFMS servers precompiled with pp.
* pandora_recon: Added detection of Net::Traceroute::PurePerl
to disable parent detection if dependencies not installed.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1026 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* Makefile.PL: Added WMI and fixed lot of small things.
* pandora_server_installer: Fixed several things.
* pandora_wmi: Launcher script added.
* lib/PandoraFMS/Config.pm: Update version.
* lib/PandoraFMS/DB.pm
* lib/PandoraFMS/Tools.pm: Added defined check in limpia_cadena().
This should fix warning message on some calls.
* bin/pandora_snmpconsole: Fixed code for SNMP TRAP alerts.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1024 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm, bin/pandora_server: Enabled again
downtime scheduler. Now works fine, tested.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1018 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_server: Disabled downtime server code until
we can review changes in db structure from new code / console.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1004 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_recon: New functional recon server. It implements
different recon tasks based on OS type. Uses a production/consumer
thread model, detec OS typew and assign automatically network profiles
(including new WMI components) and WMI, Plugin, Network and Prediction
servers, taken the first master server that could found. Uses xprobe2
external tool to detect remote OS.
* Makefile.PL: Added new dependencies (HTML::Entities), and new
binary tool for controlled time executing (pandora_exec), used now
by pandora_wmi and pandora_plugin.
* Config.pm: Fixed problem parsing xprobe2 command.
* DB.pm: Functions pandora_create_agent() and pandora_event() moved
from Tools.pm to here. Removed some old DEBUG messages.
* Tools.pm: Moved pandora_create_agent() and pandora_event() to DB.pm
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1002 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_wmi: Removed the timeout mechanism.
* bin/pandora_plugin: Removed the timeout mechanism. pandora_exec is
used instead.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@996 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_network: Added a defined() check for tcp_send string.
* pandora_server: Added call to function pandora_planned_downtime().
This implements planned downtimes on data server only.
* DB.pm: Small optimization on bad data: pandora_writedata and
pandora_writestate return -1 on bad values and skip processing data.
More checks on undefined data (pandora_writestate).
Added code for planned downtimes, in function pandora_planned_downtime().
Patch for adding [RECOVER] on f2/f3 if blank. Submitted by Kato Atsushi
Now Monitor down has priority Warning and Monitor UP priority normal.
* pandora_*servers*: Added inmediatly status change in tserver table on
controlled shutdown, this could be a ordered shutdown, a kill or a CTRL-C
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@974 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_network: Minimal style changes. Added status change in
tserver table on controlled shutdown.
* pandora_server: Added status change in tserver table on controlled
shutdown. Minimal changes and optimizations. Recheck for bad XML is
adjusted to 3 instead 10.Fixed problem with "blank" agent names. Added
support for async types (data, proc and string).
* config.pm: Added support for new config token: max_log_size. This
stablish a max log filesize.
* DB.pm: Added support for postprocess (as simple multiplier value).
Fixed problem with continuous update of laststart in server keepalive.
Updated also several logger priorities (raise them).
* Config.pm: pandora_get_os() fixed for void OSes. Logger() implements
a file-rotation system with a maximum in bytes for PandoraFMS log file.
* pandora_server.conf: Updated with new options and removed some from 1.3.1
* pandora_export: Deleted skeleton file por export server.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@967 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server/pandora_network
* pandora_server/pandora_recon
* pandora_server/pandora_plugin
* pandora_server/pandora_prediction: Updated the queries it performs. Made the MASTER server query a nested query, that way you don't join thousands of records (it was up to 6000 in my environment) wh
ile you only need a few records. It won't log as a slow query (indexes are used)
* pandora_console/operation/agentes/estado_grupo.php: Fixed the issue where all data was 0-ed out. There was an if-then-else construction that wasn't working well
* pandora_console/operation/agentes/networkmap.php: Made more extensive error messages that explains WHY it wasn't generating. Then also made it so the image is cached instead of regenerated every tim
e (currently hardcoded at 5 min.).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@951 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_network: Added a patch from godzone-nz, to implement
in TCP remote checks a multi-request meth
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@936 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_wmi: Finished first functional version. Uses wmic from
samba project (Ubuntu has in official repos). This is a first
functional prototype, not to be tested on production sites.
* pandora_plugin: fixed some bad strings.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@923 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_dbstress.pl: Added suppor for "text" moduletypes.
* pandora_recon: Now is multithreaded. Better management of already
registered IP's. Better status update. Some fixes (xprobe2 crash).
* Config.pm: Added support for recon_threads token.
* Tools.pm: added pandora_trash_ascii(), autocreate
set agent in learning mode automatically.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@879 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* config.pm: Added options for xprobe2, and autocreate.
* tools.pm: Added functions pandora_create_agent(), pandora_get_os(),
and pandora_event() (this has been moved from DB.pm).
* pandora_server.conf: Added options for xprobe2, autocreate and
autocreate_group.
* pandora_network: Added support for TCP scanning (not implemented in
console yet), parent detection using traceroute, OS fingerprinting with
xprobe2, event creation using central functions, and some optimizations.
* pandora_server: Added support for agent autocreation, OS detection from
the XML header, and event notification "new_agent" type.
* pandora_recon: First code to implement traceroute functionality
using Pureperl module. Added code for remote OS fingerprinting.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@874 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_recon: First code to implement traceroute functionality
using Pureperl module. Added code for remote OS fingerprinting.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@868 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf: Added new internal MTA feature config tokens .
* pandora_server_installer: Copy default plugins to /usr/share/pandora/util
* Config.pm: New MTA feature tokens, and added event when starting server.
* DB.pm: Changes in execute_alert function (now passes several hash refs).
Alerts and events now use new format of events. Add support for new inter-
nal MTA/SMTP alert feature. Discovered and FIXED a very annoying bug on
need_update usage in write_state function that was making a HUGE
degradation when too many non-init modules in network server.
* Tools.pm: Added pandora_sendmail() function. Needs Mail::Sendmail dep.
* All servers: Support for pandora_shutdown notify on event database.
* pandora_snmpconsole: Updated SNMP alert mechanism. Need to be tested!.
* pandora_recon: Now generate an event when discover a new host.
* util/pandora_db.pl: Added support to automatically delete events.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@859 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* Config.pm: Added dataserver_thread config token
* bin/pandora_plugin: Some minimal thread improvements (yield)
* bin/pandora_server: Uses dataserver_thread token to set up
number of starting threads.
* bin/pandora_network: Added more thread yields.
* util/plugin: Added new directory for "standard" plugins.
Added the first plugins here. Expect more in the future :-)
* plugin/openvpn_pandoraplugin.pl: Connects to openvpn daemon
and report number of active sessions.
* plugin/ssh-exec_pandoraplugin.pl: Execute a remote command
using Perl (Net::SSH::Perl) SSH functions.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@815 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_plugin, bin/pandora_prediction,
bin/pandora_network: Consumer threads now check for data
availability after lock() to avoid race conditions.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@814 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_server: The data server now uses the producer/consumer
model, like the rest of the servers. .checksum files are no longer
used.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@813 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f