> EDR Module Configuration Mode Commands
> The EDR Module Configuration Mode allows you to configure Event Data Record (EDR) file transfer parameters.
> Important: The commands or keywords/variables that are available are dependent on platform type, product version, and installed license(s).
> cdr
> This command allows you to configure EDR/UDR file transfer parameters.
> Product
> All
> Privilege
> Security Administrator, Administrator
> Syntax
> cdr { purge { storage-limit storage_limit | time-limit time_limit } [ max-files max_records_to_purge ] | push-interval push_interval | push-trigger space-usage-percent trigger_percentage | remove-file-after-transfer | transfer-mode { pull [ module-only ] | push primary { encrypted-url encrypted_url | url url } [ [ max-files max_records ] [ module-only ] [ secondary { encrypted-secondary-url encrypted_secondary_url | secondary-url secondary_url } ] [ via local-context ] + ] | use-harddisk }
> default cdr [ purge | push-interval | push-trigger space-usage-percent | remove-file-after-transfer | transfer-mode [ module-only | push via ] | use-harddisk ] +
> no cdr [ purge | remove-file-after-transfer | use-harddisk ] +
> default
> Configures the default setting for the specified keyword(s):

> • | purge: Disabled

> • | push-interval: 300 seconds

> • | push-trigger: 80 percent

> • | remove-file-after-transfer: Disabled

> • | transfer mode: Pull

> • | push via: LC is used for push

> • | use-harddisk: Disabled

> Important: The use-harddisk keyword is available only on the ASR 5000 chassis.
> no
> If previously configured, disables the specified configuration:

> • | purge: Disables purging of records.

> • | remove-file-after-transfer: Retains a copy of the file even after it has been pushed or pulled to another server.

> • | use-harddisk: Disables data storage on the SMC hard disk.

> Important: The use-harddisk keyword is available only on the ASR 5000 chassis.
> purge { storage-limit storage_limit | time-limit time_limit } [ max-files max_records_to_purge ]
> Specifies to purge/delete the CDR/EDR records based on "time" or "volume" limit.

> • | storage-limit storage_limit: Specifies to start deleting files when the specified megabytes of space is used for storage. storage_limit specifies the volume limit for the record files, in megabytes, and must be an integer from 10 through 143360.

> • | time-limit time_limit: Specifies to start deleting files older than the specified time limit. time_limit specifies the time limit for the record files, and must be an integer from 600 through 2592000.

> • | max-files max_records_to_purge: Specifies the maximum number of records to purge. max_records_to_purge must be an integer from 1000 through 10000.

> push-interval push_interval
> Specifies the transfer interval (in seconds) to push EDR and UDR files to an external file server.
> push_interval must be an integer from 60 through 3600.
> Default: 300
> push-trigger space-usage-percent trigger_percentage
> Specifies the EDR/UDR disk space utilization percentage, upon reaching which an automatic push is triggered and files are transferred to the configured external server.
> trigger_percentage specifies the EDR/UDR disk utilization percentage for triggering push, and must be an integer from 10 through 80.
> Default: 80
> remove-file-after-transfer
> Specifies that the system must delete EDR/UDR files after they are transferred to the external file server. Default: Disabled
> transfer-mode { pull [ module-only ] | push primary { encrypted-url encrypted_url | url url } [ [ max-files max_records ] [ module-only ] [ secondary { encrypted-secondary-url encrypted_secondary_url | secondary-url secondary_url } ] [ via local-context ] + ]
> Specifies the EDR/UDR file transfer mode—how the EDR and UDR files are transferred to an external file server.

> • | pull: Specifies that the L-ESS is to pull the CDR files.

> • | push: Specifies that the system is to push CDR files to the configured L-ESS.

> • | max-files max_records: Specifies the maximum number of files sent per iteration based on configured file size.

> Default: 4000

> • | module-only: Specifies that the transfer-mode is only applicable to the EDR module; if not configured it is applicable to both EDR and UDR modules. This enables to support individual record transfer-mode configuration for each module.

> • | primary encrypted-url encrypted_url: Specifies the primary URL location in encrypted format to which the system pushes the CDR files.

> encrypted_url must be the location in an encrypted format, and must be an alphanumeric string of 1 through 1024 characters.

> • | primary url url: Specifies the primary URL location to which the system pushes the CDR files.

> url must be the location, and must be an alphanumeric string of 1 through 1024 characters in the “//user:password@host:[port]/directory” format.

> • | secondary encrypted-secondary-url encrypted_secondary_url: Specifies the secondary URL location in encrypted format to which the system pushes the CDR files when the primary location is unreachable or fails.

> encrypted_secondary_url must be the secondary location in an encrypted format, and must be an alphanumeric string of 1 through 1024 characters in the “//user:password@host:[port]/directory” format.

> • | secondary secondary-url secondary_url: Specifies the secondary location to which the system pushes the CDR files when the primary location is unreachable or fails.

> secondary_url must be the secondary location, and must be an alphanumeric string of 1 through 1024 characters in the “//user:password@host:[port]/directory” format.

> • | via local-context: Configuration to select LC/SPIO for transfer of CDRs. The system pushes the EDR files via SPIO in the local context.

> use-harddisk
> Important: The use-harddisk keyword is available only on the ASR 5000 chassis.
> Specifies that on the ASR 5000 chassis the hard disk on the SMC be used to store EDR/UDR files. On configuring to use the hard disk for EDR/UDR storage, EDR/UDR files are transferred from packet processing cards to the hard disk on the SMC. Default: Disabled
> +
> Indicates that more than one of the previous keywords can be entered within a single command.
> Usage
> Use this command to configure how the charging data records (CDR) are moved and stored.
> On the ASR 5000 chassis, you must run this command only from the local context. If you run this command in any other context it will fail and result in an error message.
> If PUSH transfer mode is configured, the L-ESS server URL to which the CDR files need to be transferred to must be specified. The configuration allows a primary and a secondary server to be configured. Configuring the secondary server is optional. Whenever a file transfer to the primary server fails for four consecutive times, the files will be transferred to the secondary server. The transfer will switch back to the original primary server when:

> • | Four consecutive transfer failures to the secondary server occur.

> • | After switching from the primary server, 30 minutes elapses.

> When changing the transfer-mode from pull to push, disable the PULL from L-ESS and then change the transfer mode to push. Make sure that the push server URL configured is accessible from the local context. Also, make sure that the base directory that is mentioned contains udr directory created within it.
> When changing the transfer mode from push to pull, after changing, enable PULL on the L-ESS. Any of the ongoing PUSH activity will continue till all the scheduled file transfers are completed. If there is no PUSH activity going on at the time of this configuration change, all the PUSH related configuration is nullified immediately.
> The cdr use-harddisk command is available only on the ASR 5000 chassis. This command can be run only in a context where CDRMOD is running. Configuring in any other context will result in failure with the message “Failure: Please Check if CDRMOD is running in this context or not.”
> The cdr use-harddisk command can be configured either in the EDR or UDR module, but will be applicable to both record types. Configuring in one of the modules will prevent the configuration to be applied in the other module. Any change to this configuration must be done in the module in which it was configured, the change will be applied to both record types.
> The VPNMgr can send a maximum of 4000 files to the remote server per iteration. However if the individual file size is big (say when compression is not enabled), then while transferring 4000 files SFTP operation takes a lot of time. To prevent this, the cdr transfer-mode push command can be configured with the keyword max-files, which allows operators to configure the maximum number of files sent per iteration based on configured file size.
> Example
> The following command retains a copy of the data file after it has been transferred to the storage location:
> no cdr remove-file-after-transfer
> end
> Exits the current configuration mode and returns to the Exec mode.
> Product
> All
> Privilege
> Security Administrator, Administrator
> Syntax
> end
> Usage
> Use this command to return to the Exec mode.
> exit
> Exits the current mode and returns to the parent configuration mode.
> Product
> All
> Privilege
> Security Administrator, Administrator
> Syntax
> exit
> Usage
> Use this command to return to the parent configuration mode.
> file
> This command allows you to configure EDR file parameters.
> Product
> All
> Privilege
> Security Administrator, Administrator
> Syntax
> file [ charging-service-name { include | omit } ] [ compression { gzip | none } ] [ current-prefix string ] [ delete-timeout seconds ] [ directory directory_name ] [ edr-format-name ] [ exclude-checksum-record ] [ field-separator { hyphen | omit | underscore } ] [ file-sequence-number rulebase-seq-num ] [ headers ] [ name file_name ] [ reset-indicator ] [ rotation [ num-records number | time seconds | volume bytes ] ] [ sequence-number { length length | omit | padded | padded-six-length | unpadded } ] [ storage-limit limit ] [ single-edr-format ] [ time-stamp { expanded-format | rotated-format | unix-format } ] [ trailing-text string ] [ trap-on-file-delete ] [ xor-final-record ] +
> default file [ charging-service-name ] [ compression ] [ current-prefix ] [ delete-timeout ] [ directory ] [ edr-format-name ] [ field-separator ] [ file-sequence-number ] [ headers ] [ name ] [ reset-indicator ] [ rotation { num-records | time | volume } ] [ sequence-number ] [ storage-limit ] [ time-stamp ] [ trailing-text ] +
> default
> Configures the default setting for the specified keyword(s).
> charging-service-name { include | omit }
> Specifies to include/exclude name of the charging service in the file name.

> • | include: Include name of the charging service in the EDR file name.

> • | omit: Exclude name of the charging service in EDR file name.

> compression { gzip | none }
> Specifies compression of EDR files.

> • | gzip: Enables GNU zip compression of the EDR file at approximately 10:1 ratio.

> • | none: Disables Gzip compression.

> current-prefix string
> Specifies a string to add to the beginning of the EDR file that is currently being used to store EDR records.
> string must be an alphanumeric string of 1 through 31 characters.
> Default: curr
> delete-timeout seconds
> Specifies a timeout period (in seconds) when completed EDR files are deleted. By default, files are never deleted.
> seconds must be an integer from 3600 through 31536000.
> Default: Disabled
> directory directory_name
> Specifies a subdirectory in the default directory in which to store EDR files.
> directory_name must be an alphanumeric string of 1 through 191 characters.
> Default: /records/edr
> edr-format-name
> Specifies creation of separate files for EDRs that have different formats. Name of the EDR format is included in the file name.
> exclude-checksum-record
> When entered, this keyword excludes the final record containing #CHECKSUM followed by the 32-bit Cyclic redundancy check (CRC) of all preceding records from the EDR file.
> Default: Disabled (inserts checksum record into the EDR file header)
> field-separator [ hyphen | omit | underscore ]
> Specifies the field inclusion/exclusion type of separators between two fields of EDR file name:

> • | hyphen: Specifies to use “-” (hyphen) as the field separator.

> • | omit: Excludes the field separator.

> • | underscore: Specifies to use “_” (underscore) as the field separator.

> file-sequence-number rulebase-seq-num
> Specifies that the file name sequence numbers must be unique per rulebase and EDR format name combination.
> headers
> Includes a file header summarizing the record layout.
> name file_name
> Specifies a string to be used as the base file name for EDR files.
> Default: edr
> file_name must be an alphanumeric string of 1 through 31 characters. The file name format is as follows:
> base_rulebase_format_sequencenum_timestamp

> • | base: Specifies the type of record in file or contains the operator-specified string.

> Default: edr

> • | rulebase: Specifies the name of the ACS rulebase. EDRs from different rulebases go into different EDR files.

> • | format: Specifies the name of the EDR format if single-edr-format is specified, else the format field (and the trailing underscore) is omitted from the file name.

> • | sequencenum: This is a 5-digit sequence number to detect the missing file sequence. It is unique among all EDR files on the system.

> • | timestamp: Contains a timestamp based on file creation time in UTC time in MMDDYYYYHHMMSS format.

> EDR files that have not been closed have a string added to the beginning of their filenames.
> Filename for an EDR file in CSV format that contains information for rulebase named rulebase1 and an EDR schema named edr_schema1 appears as follows:
> edr_rulebase1_edr_schema1_00005_01302006143409
> If the file name is not configured the system will create files for EDRs/UDRs/FDRs (xDRs) using the following template with limits to 256 characters:
> basename_ChargSvcName_timestamp_SeqNumResetIndicator_FileSeqNumber

> • | basename: A global-based configurable text string that is unique per system that uniquely identifies the global location of the system running ACS.

> • | ChargSvcName: A system context-based configurable text string that uniquely identifies a specific context-based charging service

> • | timestamp: Date and time at the instance of file creation. Date and time in the form of “MMDDYYYYHHmmSS” where HH is a 24-hour value from 00-23

> • | SeqNumResetIndicator: A one-byte counter used to discern the potential for duplicated FileSeqNumber with a range of 0 to 255, which is incremented by a value of 1 for the following conditions:

> • | Failure of an ACS software process on an individual PSC.

> • | Failure of the system such that a second system takes over. For example, a backup or standby system put in place according to Interchassis Session Recovery.

> • | File Sequence Number (FileSeqNumber) rollover from 999999999 to 0

> • | FileSeqNumber: Unique file sequence number for the file with 9 digit integer having range from 000000000 to 999999999. It is unique on each system.

> File name for a closed xDR file in CSV format that contains information for ACS system xyz_city1 and charging service name preapaid2 with timestamp 12311969190000, and file sequence number counter reset indicator to 002 for file sequence number 034939002 appears as follows:
> xyz_city1_preapaid2_12311969190000_002_034939002
> File name for a running xDR file, not closed, in CSV format that contains information for the same parameters for file sequence number 034939003 prefixed with curr_ and appears as follows:
> curr_xyz_city1_preapaid2_12311969190000_002_034939002
> reset-indicator
> Specifies inclusion of the reset indicator counter value, from 0 through 255, in the EDR file name, and is incremented (by one) whenever any of the following conditions occur:

> • | An ACSMgr/SessMgr process fails.

> • | A peer chassis has taken over in compliance with our Interchassis Session Recovery feature.

> • | The sequence number, see the sequence-number keyword, has rolled over to zero.

> rotation { num-records number | time seconds | volume bytes }
> Specifies when to close an EDR file and create a new one.

> • | num-records number: Specifies the number of records that should be added to the file. When the number of records in the file reaches the specified value, the file is complete.

> number must be an integer from 100 through 10240.
> Default: 1024

> • | time seconds: Specifies the period of time (in seconds) to wait before closing the EDR file and creating a new one.

> seconds must be an integer from 30 through 86400.
> Default: 3600

> • | volume bytes: Specifies the maximum size (in bytes) of the EDR file before closing it and creating a new one.

> bytes must be an integer from 51200 through 62914560.
> Note that a higher setting may improve the compression ratio when the compression keyword is set to gzip.
> sequence-number { length length | omit | padded | padded-six-length | unpadded }
> Specifies including/excluding sequence number in the file name.

> • | length length: Includes the sequence number with the specified length.

> length must be the length of the file sequence number, with preceding zeroes, in the file name, and must be an integer from 1 through 9.
> Important: The length keyword is applicable in both EDR and UDR modules. When applied in both modules without the file udr-seq-num configuration, the minimum among the two values will come into effect for both the modules. With the file udr-seq-num keyword, each module will use its own value of length.

> • | omit: Excludes the sequence number from the file name.

> • | padded: Includes the padded sequence number with preceding zeros in the file name. This is the default setting.

> • | padded-six-length: Includes the padded sequence number with six preceding zeros in the file name.

> • | unpadded: Includes the unpadded sequence number in the file name.

> single-edr-format
> Creates separate files for EDRs having different formats.
> Default: Disabled
> storage-limit limit
> Specifies deleting files when the specified amount of space (in bytes) is used up for EDR/UDR file storage RAM on packet processing cards.
> limit must be an integer from 10485760 through 536870912. Default: 33554432
> time-stamp { expanded-format | rotated-format | unix-format }
> Specifies the timestamp of when the file was created be included in the file name.

> • | expanded-format: Specifies the UTC MMDDYYYYHHMMSS format.

> • | rotated-format: Specifies the time stamp format to YYYYMMDDHHMMSS format.

> • | unix-format: Specifies the UNIX format of x.y, where x is the number of seconds since 1/1/1970 and y is the fractional portion of the current second that has elapsed.

> trailing-text string
> Specifies the inclusion of an arbitrary text string in the file name.
> string must be an alphanumeric string of 1 through 30 characters.
> trap-on-file-delete
> Instructs the system to send an SNMP notification (trap) when an EDR/UDR file is deleted due to lack of space.
> Default: Disabled
> xor-final-record
> Specifies inserting an XOR checksum (in place of the CRC checksum) into the EDR file header if the exclude-checksum-record is left at its default setting.
> Default: Disabled
> +
> Indicates that more than one of the keywords can be entered in a single command.
> Usage
> Use this command to configure EDR file characteristics.
> Example
> The following command sets the prefix of the current active EDR file to Current:
> file current-prefix Current
> The following command sets the base file name to EDRfile:
> file name EDRfile

Cisco Systems Inc.
Tel: 408-526-4000
Fax: 408-527-0883