...
Мониторинг даты последней загрузки CDR
Запрос Данный запрос показывает в какое время была произведена последняя загрузка CDR в АСР, его удобно использовать для анализа человеком:
Code Block | ||
---|---|---|
| ||
SELECT DECODE(MAX(D_BEGIN), NULL, 'Never', TO_CHAR(MAX(D_BEGIN), 'YYYY-MM-DD HH24:MI:SS')) Last_Date_Load FROM EX_V_CDR WHERE N_CDR_TYPE_ID = SYS_CONTEXT('CONST', 'CDR_TYPE_PhoneCall') AND N_CDR_STATE_ID = SYS_CONTEXT('CONST', 'CDR_Status_Finished'); |
Триггер настраивается в зависимости от настроек периодичности Результатом будет либо
Code Block |
---|
LAST_DATE_LOAD
-------------------
2013-01-29 11:05:54 |
либо
Code Block |
---|
LAST_DATE_LOAD
-------------------
Never |
если CDR в базе не было.
В следующем примере в качестве результата выводится либо время, когда была последняя загрузка CDR (сколько секунд назад от текущего момента времени), либо -1, если загрузки CDR не было.
Его удобнее применять для обработки в системах мониторинга.
Code Block | ||
---|---|---|
| ||
SELECT DECODE(TO_CHAR(((SYSDATE-MAX(D_BEGIN))*(86400)), 'FM99999999999999990'), NULL, -1,
TO_CHAR(((SYSDATE-MAX(D_BEGIN))*(86400)), 'FM99999999999999990')) SEC
FROM EX_V_CDR
WHERE N_CDR_TYPE_ID = SYS_CONTEXT('CONST', 'CDR_TYPE_PhoneCall')
AND N_CDR_STATE_ID = SYS_CONTEXT('CONST', 'CDR_Status_Finished'); |
Триггер рекомендуется настраивать в зависимости от расписания загрузки.
Контроль количества строк в таблицах
...