[asterisk-users] Call tracing - Asterisk 1.4

David Van Ginneken davevg at gmail.com
Tue Mar 11 14:22:27 CDT 2008


Atis Lezdins wrote:
> On 3/11/08, Louwrens Benadé <louwrens at jasper.co.za> wrote:
>   
>> Hi guys
>>
>>  I've just read this about the upcoming release of * 1.6:
>>
>>  "Better reporting through a new call event logging capability in Asterisk
>>  1.6 will allow complete tracking of events that take place during a call.
>>  The goal, according to Fleming, is to provide more detail than traditional
>>  CDR (Call Detail Recording) features offer and to allow for more granular
>>  tracking and auditing."
>>
>>  That sounds brilliant! But I'm in desperate need of something to handle call
>>  tracing in 1.4...
>>
>>  Does anyone know how I can accomplish this? I thought about using the
>>  originating uniqueid and populate for every event related to the call
>>  (transfers, etc), but I'm having trouble reading the dialplan to see what
>>  executes where :(
>>     
>
> That's the way how i have it workin. Of course, this wasn't done in
> one day, i've been working on details for weeks. Generally i use CDR,
> and manipulate it with ResetCDR, NoCDR, and link them together by
> first uniqueid. This works great for IVRs, extension2extension calls,
> outgoing calls, blind transfers, queues. So i can take any call and
> see what was done to it, where it was transferred, duration of each
> step and so on, so on. However it won't work for conferences (you
> don't know that person will join conference unless it joins, and then
> it's too late to change uniqueid, first cdr may be already writted),
> and i haven't implemented that for blind transfers. But generally if
> you want all that in DB, manipulating CDR is the way to go.
>
> When you will have more specific questions, please ask, i'm sure
> somebody will answer :)
>
> Regards,
> Atis
>
>
>   

    We have a patch we wrote for a client of ours which does something 
similar which should apply to 1.4 cleanly.  Basically it will write to 
callpath_log for every app start and app end event.  We use it to log 
every step a channel takes in the dialplan for reporting purposes.  It 
is VERY verbose.  One thing it does require which you can change is we 
require a uid channel variable to be set for it to log.  (Long story 
short, we pass around the uid between servers in sip headers to have a 
global overview of the call paths throughout the enterprise.)

Anyway here is the code, and some other patches we have:

http://svn.btwtech.com/svnview/coolvocals/trunk/asterisk-customizations/1.4/ 




More information about the asterisk-users mailing list