[Asterisk-Dev] Like a Heartbeat for *

John Brown jmbrown at chagresventures.com
Sun Sep 14 17:28:07 MST 2003


Hmm, so how about putting SNMP into asterisk ??
Would give you the ability to MRTG, NOCOL, et al a system


john brown

On Sun, Sep 14, 2003 at 05:04:43PM -0700, John Todd wrote:
> >Hello,
> >
> >>  two small scripts to verify that * runs ok (doing ps -ax, querying * thru
> >>  manager 5038, etc). Now, I think that it's time to build a unique heartbeat
> >>  application, isn't it?
> >
> >I think it is an important point to make * reliable. But there are 
> >differents sort of things to probe in *:
> >-channels are the most important one I think (probe that * is 
> >running and is able to accept calls through sip/iax or h323 channel 
> >per example)
> >-another thing important is to be sure that all applications are 
> >working (the other day I had all the system down due to too many 
> >file handles open, so all AGI were not working)
> >-another one is to probe if it is not caused by one of the provider 
> >(a link like E1 or internet provider is down...).
> >
> >For the moment I don't know if the system has to be maid from the 
> >inside of *, or if it should be an outside program, but some probes 
> >can only be maid from the inside like checking the apps.
> >
> >Miro
> 
> I disagree that any testing needs to be done from within Asterisk. 
> This is an opinion, but here's why I say that:
> 
> A) If your application is primarily the connection of calls between 
> point A and point B, then you could create an automatic dialing 
> program that checked for a tone between points A and B, as if they 
> were a "normal" dialing customer.  Measure call completion via some 
> out-of-band IP-based tool - perhaps fire off a UDP packet at the 
> other end, or send an file, or something.  You might even have a 
> remote phone ringer hooked up to a switch to a d/a converter - make 
> it as fancy or as simple as you want.  If a regularly scheduled call 
> fails, set off an alarm.
> 
> B) If your application is primarily a database or scripted 
> application that is "internal" to Asterisk, then create triggers 
> inside of your scripts/dialplan that communicate with your monitoring 
> system at certain points.  Then, create a "dummy" user like in method 
> A that calls in to your production system and performs certain tasks 
> at a scheduled time.  If while your dummy user is going through the 
> system and the triggers are not being fired, then you have a problem. 
> Set off an alarm.
> 
> The nice thing about A and B is that you can use Asterisk to perform 
> a large portion of the testing, since Asterisk can mimic a standard 
> user fairly accurately.  The only thing it can't do is detect certain 
> responses on the RTP channel to verify that a call sounds "good". 
> This would require some sort of MOS toolkit at each endpoint. 
> (Alternately: RTCP anyone?  Anyone?  Anyone?  Bueller?)
> 
> While I understand the desire to having a fully-integrated 
> "monitoring" system inside of Asterisk sounds good, I also very 
> rarely find that self-monitoring applications that don't melt down in 
> a way that defeats their own self-monitoring.  External measurement 
> from the user's perspective is always a better way to monitor.
> 
> Now, if you'd asked about "measurement" of values within Asterisk, 
> that is a different story...
> 
> JT
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev



More information about the asterisk-dev mailing list