Total Hit Counter

Friday, January 31, 2014

Exception processing request


Exception processing request: Request contained arguments (not currently allowed, check the allow arguments option).

Your problem is the keys should NOT be with underscores (that's the old format)....
A good way to "solve this" is to runt he following command:
nscp settings --generate settings --add-defaults
THat will add all "normal keys" to your settings file correctly with descriptions...
You can (if you do):
nscp settings --help
Get some more details. There are options for generating all keys from all modeuls (default is only modules you have configured) and some other usefull things...

Thursday, January 23, 2014

check_oracle_health

check_oracle_health

Monitoring Oracle Database

To Create monitoring of Oracle database Follow below steps.

Step 1: To Download Below Rpms Click Here.....

oracle-instantclient12.1-basic-12.1.0.1.0-1.x86_64.rpm
oracle-instantclient12.1-sqlplus-12.1.0.1.0-1.x86_64.rpm
oracle-instantclient12.1-devel-12.1.0.1.0-1.x86_64.rpm
oracle-instantclient12.1-jdbc-12.1.0.1.0-1.x86_64.rpm

Step 2: After Downloading rpms Install them on Nagios Server.

Fist install below pacages: libdbi-drivers and libdbi perl-DBI libaio
[root@nagios_master ~]# yum install libdbi-drivers libdbi perl-DBI libaio

Now install oracle packages.
[root@nagios_master ~]# rpm -ivh oracle-instantclient12.1-devel-12.1.0.1.0-1.x86_64.rpm oracle-instantclient12.1-jdbc-12.1.0.1.0-1.x86_64.rpm oracle-instantclient12.1-sqlplus-12.1.0.1.0-1.x86_64.rpm oracle-instantclient12.1-basic-12.1.0.1.0-1.x86_64.rpm

Now set ORACLE HOME
[root@nagios_master ~]# echo 'export ORACLE_HOME=/usr/lib/oracle/12.1/client64/' /etc/profile

[root@nagios_master ~]# echo 'export LD_LIBRARY_PATH=/usr/lib/oracle/12.1/client64/lib/' >> /etc/profile
[root@nagios_master ~]# mkdir -p /usr/lib/oracle/12.1/client64/lib/network/admin/ && echo 'names.directory_path = (TNSNAMES,EZCONNECT)' > /usr/lib/oracle/12.1/client64/lib/network/admin/sqlnet.ora
[root@nagios_master ~]# chmod 777 /tmp/check_oracle_health

Now execute cpan command prompt and install DBD-Oracle 
[root@nagios_master ~]# cpan
cpan[1]> install DBD::Oracle


Step 3: Now download Check_oracle_health plugin from below link:

http://labs.consol.de/download/shinken-nagios-plugins/check_oracle_health-1.7.8.1.tar.gz 

[root@nagios_master ~]# tar -xvf check_oracle_health-1.7.8.1.tar.gz
[root@nagios_master ~]# cd check_oracle_health-1.7.8.1
[root@nagios_master ~]# ./configure --with-statefiles-dir=/tmp/ --with-nagios-user=nagios --with-nagios-group=nagios --with-mymodules-dir=/usr/local/nagios/libexec/plugins/ --with-mymodules-dyn-dir=/usr/local/nagios/libexec/plugins/
[root@nagios_master ~]# make && make install


Then, create a dedicated user for monitoring, connect to your Oracle database and enter the following lines:
CREATE USER nagios IDENTIFIED BY nagios ;
GRANT CREATE SESSION TO nagios;GRANT SELECT any dictionary TO nagios;GRANT SELECT ON V_$SYSSTAT TO nagios;GRANT SELECT ON V_$INSTANCE TO nagios;GRANT SELECT ON V_$LOG TO nagios;GRANT SELECT ON SYS.DBA_DATA_FILES TO nagios;GRANT SELECT ON SYS.DBA_FREE_SPACE TO nagios;

[root@nagios_master ~]/usr/local/nagios/libexec/plugins/check_oracle_health --connect=xxx.xxx.xxx.xxx/ORCL --username=nagios --password=nagios --tablespace=SUPERVISION  --mode tablespace-usage
CRITICAL - tbs SYSTEM usage is 90%

Thursday, January 16, 2014

Syslog-ng Configuration to Send logs to Syslog server

Client IP:192.168.1.65
ServerIP:192.168.1.64

Client side add following lines into /etc/syslog-ng/syslog-ng.conf
##########################

source s_local { internal(); unix-stream("/dev/log"); file("/proc/kmsg" program_override("kernel: ")); };
source s_msg { file("/var/log/messages.myhost"); };
destination d_loghost {tcp("192.168.1.64" port(514));};
log { source(s_local); source(s_msg); destination(d_loghost); };

###################################

Server side add following lines
To send logs to mysql need following packages
 libdbi0, libdbi0-dev, libdbd-mysql
##################################

  options {
        flush_lines (0);
    log_fifo_size (2048);
    create_dirs (yes);
    group (shankar);
    dir_group (shankar);
    perm (0640);
    dir_perm (0750);
    };


source s_remote { tcp(); };
destination d_clients { file("/var/log/HOSTS/$HOST/shankar.txt"); };
log { source(s_remote); destination(d_clients); };

# CREATES TABLE IF NOT IN MYSQL

destination d_sql {
sql(type(mysql)
host("localhost") username("root") password("") port("3306")
database("syslog")
table("messages_${HOST}_${R_YEAR}${R_MONTH}${R_DAY}")
columns("datetime", "host", "program", "pid", "message")
values("$R_DATE", "$HOST", "$PROGRAM", "$PID", "$MSGONLY")
indexes("datetime", "host", "program", "pid", "message"));
};


# TO SEND LOGS IN MYSQL
log { source(s_remote); destination(d_sql); };

###################################