[Asterisk-code-review] cdr/cdr csv.c: Add a new option to enable columns added in A... (asterisk[master])
Joshua Colp
asteriskteam at digium.com
Sun May 3 11:37:36 CDT 2015
Joshua Colp has submitted this change and it was merged.
Change subject: cdr/cdr_csv.c: Add a new option to enable columns added in Asterisk 1.8
......................................................................
cdr/cdr_csv.c: Add a new option to enable columns added in Asterisk 1.8
This patch adds a new option to cdr.conf, 'newcdrcolumns', that will handle CDR
columns added in Asterisk 1.8. The columns are:
* peeraccount
* linkedid
* sequence
When enabled, the columns in the database entry will be populated with the data
from the CDR.
ASTERISK-24976 #close
Change-Id: I51a57063f4ae5e194a9d933a8df45dc8a4534f0b
---
M CHANGES
M cdr/cdr_csv.c
M configs/samples/cdr.conf.sample
3 files changed, 18 insertions(+), 0 deletions(-)
Approvals:
Matt Jordan: Looks good to me, but someone else must approve
Joshua Colp: Looks good to me, approved; Verified
diff --git a/CHANGES b/CHANGES
index fcb4877..28263b8 100644
--- a/CHANGES
+++ b/CHANGES
@@ -40,6 +40,12 @@
* Added a new configuration option, "newcdrcolumns", which enables use of the
post-1.8 CDR columns 'peeraccount', 'linkedid', and 'sequence'.
+------------------
+cdr_csv
+------------------
+ * Added a new configuration option, "newcdrcolumns", which enables use of the
+ post-1.8 CDR columns 'peeraccount', 'linkedid', and 'sequence'.
+
Channel Drivers
------------------
diff --git a/cdr/cdr_csv.c b/cdr/cdr_csv.c
index 5f3e95c..a480a47 100644
--- a/cdr/cdr_csv.c
+++ b/cdr/cdr_csv.c
@@ -58,6 +58,7 @@
static int loguniqueid = 0;
static int loguserfield = 0;
static int loaded = 0;
+static int newcdrcolumns = 0;
static const char config[] = "cdr.conf";
/* #define CSV_LOGUNIQUEID 1 */
@@ -113,6 +114,7 @@
usegmtime = 0;
loguniqueid = 0;
loguserfield = 0;
+ newcdrcolumns = 0;
if (!(v = ast_variable_browse(cfg, "csv"))) {
ast_config_destroy(cfg);
@@ -129,7 +131,10 @@
loguniqueid = ast_true(v->value);
} else if (!strcasecmp(v->name, "loguserfield")) {
loguserfield = ast_true(v->value);
+ } else if (!strcasecmp(v->name, "newcdrcolumns")) {
+ newcdrcolumns = ast_true(v->value);
}
+
}
ast_config_destroy(cfg);
return 1;
@@ -241,6 +246,11 @@
/* append the user field */
if(loguserfield)
append_string(buf, cdr->userfield, bufsize);
+ if (newcdrcolumns) {
+ append_string(buf, cdr->peeraccount, bufsize);
+ append_string(buf, cdr->linkedid, bufsize);
+ append_int(buf, cdr->sequence, bufsize);
+ }
/* If we hit the end of our buffer, log an error */
if (strlen(buf) < bufsize - 5) {
/* Trim off trailing comma */
diff --git a/configs/samples/cdr.conf.sample b/configs/samples/cdr.conf.sample
index 2c7cdf6..e175a2a 100644
--- a/configs/samples/cdr.conf.sample
+++ b/configs/samples/cdr.conf.sample
@@ -154,6 +154,8 @@
loguniqueid=yes ; log uniqueid. Default is "no"
loguserfield=yes ; log user field. Default is "no"
accountlogs=yes ; create separate log file for each account code. Default is "yes"
+;newcdrcolumns=yes ; Enable logging of post-1.8 CDR columns (peeraccount, linkedid, sequence).
+ ; Default is "no".
;[radius]
;usegmtime=yes ; log date/time in GMT
--
To view, visit https://gerrit.asterisk.org/293
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I51a57063f4ae5e194a9d933a8df45dc8a4534f0b
Gerrit-PatchSet: 3
Gerrit-Project: asterisk
Gerrit-Branch: master
Gerrit-Owner: Rodrigo Ramirez Norambuena <decipher.hk at gmail.com>
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>
Gerrit-Reviewer: Matt Jordan <mjordan at digium.com>
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
Gerrit-Reviewer: Rodrigo Ramirez Norambuena <decipher.hk at gmail.com>
More information about the asterisk-code-review
mailing list