Brett, As I don't think some of your questions got answered yet, see inline comments. Yossi Neiman Cartis Solutions, Inc. - http://www.cartissolutions.com Brett Nemeroff wrote:
Hey, Comment on CDR and redundant servers. I've seen a lot of nightmareish scenarios with Asterisk and broken MySQL databases (or broken network connectivity). Ugly things like the SQL server becomes unavailable and then the SIP channel blocks...
I have developed with this idea in mind. Currently I have not yet implemented a routine for handling when output to certain logging methods fails (in this case a database server), but the skeleton is partially there already. The ::process_record() method returns fail or success, so in the event of failure it could log it out to a temporary location and reload it at a later time. Since mod_cdr is a module with its own threadspace, it should not interfere with any other part of the system if it fails to process a record or a record takes longer than usual to process. All data is copied off the session and allowed to be cleaned up by the switch core.
Why not just make the CDR module output to a pipe or socket and have a seperate program read the socket and do whatever.. that way the app is completely isolated from the Database
This was not the design that I had in mind for mod_cdr. Doing something like this, especially with multicast, would be more on the lines of higher grade CDR and billing processing. I wanted to start off with a project that wasn't as complex as that, and work my way up to it. I expect that we will take a different design approach on setting up something like this. That being said, as Tony already stated, there are ways to isolate the CDRs from the actual database, and he does it with the Perl Data Dumper format (implemented as AnthmCDR in mod_cdr). Of course there is also CSV (as CsvCDR) already as well.
BTW, can the multicast eventing do something like that already? How does the multicast eventing and cdr gel up? -Brett
On Mon, July 10, 2006 9:58 am, Yossi Neiman wrote:
Hey folks,
For all of you who were wondering when Freeswitch will be supporting the logging of Call Detail Records, here is the current status:
mod_cdr currently logs to three types of outputs: CSV format (CsvCDR), Perl Data Dumper Format to individual files (AnthmCDR), and to MySQL 4.1.x or greater using prepared statements (MysqlCDR). I have not yet implemented any failover routines, but at the moment that would mostly only pertain to the Mysql output anyway. I will not be able to implement those routines until after the initial inclusion of mod_cdr into the trunk. That inclusion I hope will be coming very soon as all we really need to do is do some additional testing to make sure I've not missed anything. I expect that we will be ready for testing very soon.
Will keep the list posted when it is merged into the trunk.
Yossi Neiman Cartis Solutions, Inc. - http://www.cartissolutions.com
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users