Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Определить, с помощью следующего скрипта, данных какого типа большинство 

    Code Block
    SQL> SELECT SI_REF_PKG_S.GET_NAME_BY_ID(N_CDR_TYPE_ID) VC_CDR_NAME,
           COUNT(*)
    FROM   EX_CALL_DATA_REC
    GROUP BY N_CDR_TYPE_ID;
    
    VC_CDR_NAME              COUNT(*)
    ------------------------------------------------------------------------
    Телефонный звонок       107552
    PPP-сессия (без тарификации)  3774012
  2. В случае большого количества CDR (телефонный звонок) обратиться в техподдержку для выгрузки CDR в файл.
  3. В случае большого количества PPP-сессий необходимо уменьшить значение параметра Таймаут удаления старых CDR на форме редактирования сетевых служб, по которым создаются PPP-сессии.

Контроль работы приложений системы

Веб-приложения

HOPER

При запуске процесса создается PID-файл.

  • Для версии 3.3 и выше его расположение указывается в конфигурационном файле, обычно это /var/run/hydra/hoper/unicorn.pid.
  • Для версии ниже 3.3 его расположение нельзя изменить. Он находится в shared/unicorn.pid от корня установки приложения.

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hoper/unicorn.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

HUPO

При запуске процесса создается PID-файл.

  • Для версии 3.3 его расположение указывается в конфигурационном файле, обычно это /var/run/hydra/hupo/unicorn.pid .
  • Для версии ниже 3.3 его расположение нельзя изменить. Он находится в shared/pids/unicorn.pid от корня установки приложения.

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hupo/unicorn.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

HDD

При запуске создается два процесса - hdd_default , hdd_default_monitor и два PID-файла.

  • Для версии 3.3 расположение указывается в конфигурационном файле, обычно это /var/run/hydra/hdd/hdd_default.pid , /var/run/hydra/hdd/hdd_default_monitor.pid.
  • Для версий ниже 3.3 расположение нельзя изменить. Они находятся в tmp/ от корня установки приложения.

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса hdd_default не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hdd/hdd_default.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса hdd_default_monitor не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hdd/hdd_default_monitor.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Агенты

hamd

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (/etc/hamd/hamd.conf). Как правило PID-файл располагается по пути /var/run/hydra/hamd.pid.

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@server:~# PIDFILE="/var/run/hydra/hamd.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту. Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@server:~# PORT=8889; lsof -i :$PORT -n > /dev/null ; echo $?

hard

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (/etc/hard/hard.conf). Как правило PID-файл располагается по пути /var/run/hydra/hard.pid.
Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hard.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту. Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@sever:~# PORT=11080; lsof -i :$PORT -n > /dev/null ; echo $?

hcd

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (/etc/hcd/hcd.conf). Как правило PID-файл располагается по пути /var/run/hydra/hcd.pid.
Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hcd.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту. Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@sever:~# PORT=8888; lsof -i :$PORT -n > /dev/null ; echo $?

hid

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (/etc/hid/hid.conf). Как правило PID-файл располагается по пути /var/run/hydra/hid.pid.

Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hid.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту. Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@sever:~# PORT=10080; lsof -i :$PORT -n > /dev/null ; echo $?

hpd

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (/etc/hpd/hpd.conf). Как правило PID-файл располагается по пути /var/run/hydra/hpd.pid.
Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/hydra/hpd.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту. Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@sever:~# PORT=9080; lsof -i :$PORT -n > /dev/null ; echo $?

FreeRADIUS

При запуске процесса создается PID-файл, расположение которого задается в конфигурационном файле (как правило, /etc/freeradius/radiusd.conf). Обычно PID-файл располагается по пути /var/run/radiusd/radiusd.pid.
Следующий код возвращает 0, если процесс существует, и 1, если не существует или если PID-файл процесса не найденнайден (под пользователем root):

Code Block
root@sever:~# PIDFILE="/var/run/radiusd/radiusd.pid" ; if [ -f $PIDFILE ] ; then kill -0 `cat $PIDFILE` > /dev/null 2>&1 ; echo $? ; else echo "1" ; fi

Также рекомендуется проверять наличие процесса на порту (для авторизации чаще всего используется UDP-порт 1812). Следующий код возвращает 0, если процесс слушает необходимый порт, и 1, если нет:

Code Block
root@sever:~# PORT=1812; lsof -i :$PORT -n > /dev/null ; echo $?

 

Приложение: скрипт для создания пользователя БД с необходимыми правами

Следующий скрипт содержит в себе команды по созданию пользователя с необходимыми правами для мониторинга

...

Данный скрипт необходимо выполнять из под пользователя SYSсистемы и Oracle, его необходимо выполнять под пользователем SYS:

Code Block
languagesql
titleСоздание пользователя для мониторинга
CREATE USER &&username PROFILE DEFAULT IDENTIFIED BY &&password
DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP
ACCOUNT UNLOCK;
/ 
GRANT SELECT ON V_$LOG_HISTORY TO &&username;
GRANT SELECT ON V_$PARAMETER TO &&username;  

GRANT CONNECT TO &&username;
GRANT RESOURCE TO &&username;
  
GRANT SELECT ON SS_V_JOBS TO &&username;
GRANT SELECT ON SI_V_USERS TO &&username;
GRANT SELECT ON SS_V_JOB_SEANCES TO &&username;
GRANT SELECT ON SS_V_MANAGER_JOBS TO &&username;
  
GRANT EXECUTE ON SI_SUBJECTS_PKG_S TO &&username;
GRANT EXECUTE ON SI_OBJECTS_PKG_S TO &&username;
GRANT EXECUTE ON SI_REF_PKG_S TO &&username;

-- count.dbc
GRANT SELECT ON V_$DATABASE_BLOCK_CORRUPTION TO &&username;
-- count.uretenop
GRANT SELECT ON V_$UNDOSTAT TO &&username; 
-- count.cdr; count.lastcdr
GRANT SELECT ON EX_V_CDR TO &&username;
-- count.gm
GRANT SELECT ON SD_GOOD_MOVES TO &&username;
-- count.ecrd
GRANT SELECT ON EX_CALL_DATA_REC TO &&username;
-- count.edc
GRANT SELECT ON EX_DATA_COLLECT TO &&username;
-- count.etcc
GRANT SELECT ON EX_TRAFFIC_COLLECT_C TO &&username;
-- count.active
GRANT SELECT ON SI_SUBJ_GOODS TO &&username;
-- tblspace.discovery
GRANT SELECT ON DBA_SEGMENTS TO &&username;
-- tblspace.pcf
GRANT SELECT ON DBA_DATA_FILES TO &&username;
GRANT SELECT ON DBA_SEGMENTS TO &&username;
-- checkactive
GRANT SELECT ON V_$INSTANCE TO &&username;
-- rcachehit
GRANT SELECT ON V_$SYSSTAT TO &&username;
-- activeusercount
GRANT SELECT ON V_$SESSION TO &&username;
-- dbsize
GRANT SELECT ON DBA_FREE_SPACE TO &&username;
GRANT SELECT ON DBA_TABLESPACES TO &&username;
-- lastarclog
GRANT SELECT ON V_$LOG TO &&username;
-- freebufwaits
GRANT SELECT ON V_$SYSTEM_EVENT TO &&username;
GRANT SELECT ON V_$EVENT_NAME TO &&username;
/
QUIT;