* lib/PandoraFMS/Core.pm: Automonitoring includes now status of
database maintance and warns if more than 24hrs without running
database maintance script.
* util/pandora_db.pl: Added support to new purge parameters for
event, audits, snmp traps, string data and gis data. Added new
section to clean orphaned information (using an application -
implemented database referencial integrity model).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2500 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf: New option, self_monitoring.
* lib/PandoraFMS/Config.pm: Support for new option self_monitoring.
* lib/PandoraFMS/Core.pm: Access update is not refreshed by network
modules anymore (gaining a lot of performance here). Added new functions
for internal statistics and automonitoring.
* lib/PandoraFMS/Tools.pm: New funtions for self_monitoring.
* bin/pandora_server: Modified error handler to avoid show info about bad
load of some optional libraries.
Modified general loop of maintance tasks in three
blocks: high, medium and low latency. Placed here in fixed steps (5, 30 and
one minute) all tasks pending before by server_threshold. Added
self_monitoring and internal statistic mode (for group and servers).
* util/pandora_db.pl: Update tconfig with last time of database maintance
time
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2377 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_server: Better error management, avoiding to show Enterprise
loading errors, and showing in console critical errors, helping to identify
silly errors like DB credentials, etc.
Added usage of pandora_get_sharedconfig() to get configuration from DB.
* Config.pm: Updated build. Added pandora_get_sharedconfig(). Force three
config tokens to be readed from DB, using default values if cannot be readen
from database (agentaccess, realtimestat and stats_interval).
* Core.pm: Added new parameter to pandora_event() to pass status of the
event (validated, not validated). Implemented auto-validation of low
priority events: normal/ok events will be always shown as autovalidated, and
warning and normal events will be validated with critical events, and when
a module is restored (normal/ok), all it's warning/critical pending events
will be validated.
Fixed also bug with FF Threshold who doesnt' trigger events until FF + 1
instead FF value.
* Server.pm,
NetworkServer.pm,
Dataserver.pm,
ReconServer.pm: Raise event with status 0 (non validated) by default.
* NetworkServer.pm: Implemented support for SNMP v3.
* util/pandora_db.pm: Very important upgrade to this script. Now will
delete all huge tables (tagente_datos, tagente_datos_string and
tagent_acccess) using several independent blocks (by default 100) avoiding
mysql locks which happen in the past.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2341 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* util/pandora_db.pl: Script upgrade to purge data in several steps
avoiding timeout and deadlocks() in high capacity enviroments.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2333 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DataServer.pm: Reduced timeout for sleep
on BADXML from 60 to 10 sec. This could result in bottleneck
when several BADXML found at the same time. Default code
retries 3 times x 10 secs, time enough to discard and retry.
* util/pandora_db.pl: Disabled non-init modules are not deleted.
This is needed for disabled modules coming from a remote conf
(manual or by policy) who cannot execute in agent. If are
deleted each day after purge, will appear as "unknown" and
admin will need to disable it again, and the same next day.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1994 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* util/pandora_db.pl: Minor improvements in script. Added
a switch for mode without compact.
* util/pandora_server: Added higher sleep in restart mode to
wait some busy threads to stop before start.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1956 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* util/pandora_exec -> bin/pandora_exec: Moved.
* pandora_server -> util/pandora_server: Moved.
* plugins/pandora_loadgen.pl
plugins/pandora_server_status.pl: New plugins for generate data
and get Pandora FMS server status and load.
* Config.pm, pandora_db.pl: Version update.
* pandora_server.spec,
Makefile.PL,
pandora_server_installer: Updated paths and dependencies
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1946 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Core.pm, lib/PandoraFMS/DataServer.pm: Properly set
module interval when auto-creating modules.
* lib/PandoraFMS/NetworkServer.pm: Disabled error messages from
snmpget. The logs where flooded with timeout messages.
* util/pandora_db.pl: Updated to work with the new code.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1626 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
* DB.pm: Fixed NOT behaviour of alerts, now works as supposed to do.
* pandora_db.pl: Deleted pending modules, fixed problems using bad DB
function.
* Config.pm: Version update.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1402 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_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_server_installer: Added more info about some dependencies.
* pandora_package_installer: The same.
* util/pandora_db.pl: Fixed problem deleteing tevent table.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1082 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
* AUTHORS, README: Updated.
* util/pandora_db.pl: Modified version of compactation funtion
needs to be tested, not functional yet.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@800 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm: Fixed alert that fires always one time more than
max_alert defined. Also fixed several issues with "Ceased" support for alerts
and correct internal_counter problem. Now works fine !
* util/pandora_db.pl: Purge of tagent_access was not working fine, and fixed
another problem with id_agent 0 data in tagente_datos.
After about 12 hours of intense testing this seems to work very fine, probably
this server code will be the final ! :-)
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@664 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* util/pandora_db.pl: Added some fixes and new checks for database
consistency. Also purge non-init modules (needed to avoid unused modules
that take too much time on network servers!).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@627 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib: Linked to bin/PandoraFMS, for use in Makefile.PL
* Makefile.PL: Perl standard interface for make (to install)
* bin/pandora_db.pl: Some small fixes and information strings updated.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@584 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
Important update. Now all PM files (library) goes on PandoraFMS
subdirectory from /bin. This should be copied/moved to system
default Perl libraries (like /usr/lib/perl). All .PM files changes
it's name.
We also replace Net::Ping for Alive checks because recently
problems discovered in packet lenght payload and problems with
threads. We fallback to Net::Ping::External, now rewrapped to
PandoraFMS::PingExternal and distributed with PandoraFMS for easy
deployment.
bin/*.pm: Renamed to equivalent files in ./bin/PandoraFMS dir
* bin/pandora_network.pl: Now uses ping() from PingExternal to
make alive checks. Latency checks is the only function that
actually needs root now. External Ping could be executed from any
user (it uses PING from system).
* bin/PandoraFMS: Now contains all .PM files for PandoraFMS.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@490 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f