среда, 18 марта 2015 г.

CDR Cisco Callmanager (CUCM) в легкочитаемый человеком вид

Для анализа CDR от Cisco CallManager нашел три более-менее удобных способа
Для любого из них нужно сначала
1) Залогиниться в CUCM CAR
2) выгрузить в csv CDR (при выгрузке отключите CMR будет немного меньше избыточных для простых задач данных)

Обработка
1)  открыть в excel и убрать вручную избыточные столбцы, привести формат даты и времени из unix формата timestamp в человекочитаемый формат, например с помощью двух формул. То есть добавил два столбца, вставил формулу и протянул мышкой вниз.

=(((C1/60)/60)/24)+ДАТА(1970; 1; 1) - дата
=(((C1/60)/60)/24)                                     - время

2) просмотреть с помощью небольшой утилиты с форума supportforum.cisco.com 
cisco 
https://learningnetwork.cisco.com/thread/50029?start=15&tstart=0
 прямая ссылка на всякий случай
https://dl.dropboxusercontent.com/u/53426117/PermLinks/UCMcdr.exe

3) красивый способ 

Взято здесь http://yurisk.info/2014/05/12/cisco-cucm-cdr-report-call-duration-and-called-numbers-extraction-script/

 awk -F,'BEGIN {OFS=","} {print strftime("%c",$5),$9,$31,$56}'report_cdr
Вместо report_cdr использовать ваше имя файла с отчетами
Такую строку удобно использовать в других, более сложных скриптах
Если просто обработать, то не забываем в конце добавить например
awk-F, 'BEGIN {OFS=","} {print strftime("%c",$5),$9,$31,$56}' report_cdr  перенаправляем в report.csv

1 комментарий:

Yevhenii Merezhko комментирует...

Cisco Callmanager (CUCM) call detail record in readable form.
First step
1) awk -F, 'BEGIN {OFS=","} {print strftime("%c",$5),$9,$31,$56}' name_of_cdr_file > intermediate_file
2) cat intermediate_file | awk -F, '$3 ~/^900/'| awk -F, '$4 !~/0/'| awk -F, '{print $1,$2,(substr($3,4)),$4}' > long_distance..txt
I select all number starting with 900
with call length other then 0.
then cut from begging 900 in 3rd column and output in file longdistance.txt