# CDR Disk Storage

CDR storage space consists of one or more CDR record blocks that are stored in the server account drive. Each block stores up to 64 CDR records. The maximum number of blocks that you can allocate is 15,625, which could store up to 999,999 CDR records. Since each block occupies one account record (also called OAA record), allocating too many blocks for CDR can interfere with the ability of the server to accept or deliver messages.

When you start to change the number of CDR records, the server tells you how many account records are available. Then you can determine how many of those to allocate for CDR records. You can also check Total System Statistics for more details on account record use. Remember, other server applications cannot use any of the space you allocate to CDR.

## Maximum Number of Records

The CDR Configuration Menu allows you to set the maximum number of CDR records to be logged on the server before a wraparound takes place. A wraparound occurs when the server has stored the maximum number of records. The next CDR record stored overwrites the oldest block (64 CDR records). Do not confuse this "wraparound" feature with the "turning over" of the Call Sequence Number. Once the Sequence Number reaches 999999, it resets the next number to 1, like an odometer. However, only the Sequence Number is reset; records or blocks are not overwritten.

Before configuring the CDR application, you should estimate how many records you want to store. Determine how often you want to download your data (for external processing); a typical sequence would be once per week. hen you should note the number of ports (phone lines) your server has, how many calls per time period each port handles, and how many records are stored per call (for example, using a tree or chain mailbox creates two records per call).

EXAMPLE: Assume your server has 120 ports and receives 100 calls per day per port. Assume that one CDR record per voice message is generated (certain features or integrations can generate more). You plan to download data weekly, so you must store a week’s worth of records.

Calls x Ports x Days = 100 x 120 x 7 = 84000 records needed

To compute the number of accounting records you need, divide the number of CDR records needed by 64 and round up to the next whole number (integer):

CDR records / 64 records/block = blocks needed
84000 / 64 = 1312.5 Þ 1313 blocks (accounting records)

Monitor your actual server performance to see if your estimate was accurate. It is better to err on the higher side to avoid overwriting the oldest records. The more CDR records you plan to log, the more accounting records you need. Call Type 1, in particular, creates a large number of CDR records. Remember that the accounting records are also used for mailboxes and distribution lists, so you must determine how many of these to allocate to CDR. Once allocated to CDR, you cannot use them for other operations. To make them available again for normal mailbox processing, you would have to lower the maximum number of CDR records and then delete the existing CDR data.

Use this worksheet to compute your server’s storage needs. The sample worksheet below has been filled out with the example used above. Blank worksheets are available in the Appendix.

Sample CDR Disk Storage Space Worksheet
Instruction | Your Answer | Comments
1. Ports in NuPoint Unified Messaging server | 120 |
2. Average calls per day | 100 |
3. Number of days between CDR downloads | 7 |
4. Call adjustment | 1 | CDR records per call, usually = 1
5. Multiply ports x calls x days adjustment (step1 x step 2 x step 3 x step 4) | 84000 | Total CDR records
6. Divide step5 by 64 | 1312.5 | 64 records per block
7. Round up to next whole number | 1313 | Record blocks needed

## Changing the Maximum Number

Once you compute how many records you need, enter that number in the Maximum Number of CDR msgs parameter. If you type ? for help, the server indicates how many account records are available. If you change the number of records stored, new storage is not allocated until you exit the CDR Configuration menu.

To use CDR, you must change the default from 0 to a positive number, or you cannot store any records.

If you reduce this number, you must delete the CDR records to free up account records. You do not need to delete after increasing the number of records stored. You can reduce the number of records only if CDR is stopped. Be sure to restart CDR after stopping it to change number of records saved.

The server warns you if you request too many CDR records to allow enough records for normal mailbox and distribution list operation. If you get this warning, it is recommended that you enter a smaller number of CDR records, or it could impact server performance. You are required to leave a minimum of 300 account records in order to run the NuPoint Voice application.

## Total System Statistics

This is a Text Console menu choice that displays server statistics. Use it to find the total number of available speech blocks, when determining CDR record (message) space. See below for an example of the output.

Check total system statistics before entering CDR, since both are under the Report Generation menu. This way you do not have to exit and reenter CDR. If you only need to know the number of account records, then you can choose the Max Number of CDR msgs parameter in the Configuration Menu. The server displays the number of available account records before asking you to enter a new number.

TOTAL STATISTICS SUMMARY REPORT Fri Apr 21, 1995 12:26 pm ------------------------------< SUNDAY >-------------------------------- Date: Sun Apr 16 23:15:07 1995 Last Reset: Sat Apr 15 08:52:55 1995 Total Messages: 90000 Lowest Messages Free: 86377 Total Speech: 384000 Lowest Speech Free: 325480 Total Calls: 0 Total Seconds: 0:00:00 Line ATB Count: 0 Line ATB Seconds: 0:00:00 NETWORKING <=========== PEAKS ==========><=========== TOTALS =========> MESSAGES: IN QUEUE MINUTES LATENCY DELIVERED UNDELIV RECEIVED BATCH: 9 0 0:00:00 0 0 27 URGENT: 0 0 0:00:00 0 - 1 ------------------------------< MONDAY >-------------------------------- Date: Mon Apr 17 23:15:06 1995 Last Reset: Mon Apr 17 15:14:50 1995 Total Messages: 90000 Lowest Messages Free: 86234 Total Speech: 384000 Lowest Speech Free: 324377 Total Calls: 0 Total Seconds: 0:00:00 Line ATB Count: 0 Line ATB Seconds: 0:00:00 NETWORKING <=========== PEAKS ==========><=========== TOTALS =========> MESSAGES: IN QUEUE MINUTES LATENCY DELIVERED UNDELIV RECEIVED BATCH: 55 0 0:00:00 0 0 354 URGENT: 0 0 0:00:00 0 - 34

### Logfile Messages

CDR logs the following message into the server error logfile when the CDR file nears the maximum number of records allowed (see Maximum Number of Records earlier in this section):

<module> <task-ID> <date> <time>: CDR file is X% full at <CSN>

Note: Support for multiple-module servers (e.g. NPM UM 640) was discontinued with NuPoint Release 6.0.

The parameters are explained in the table below. Error messages are logged when CDR storage is 85, 90, and 95 percent full. Here is a sample message:

1 0341 03/22 3:28:15: CDR file is 85% full at 605123

CDR Log File Parameters
Parameter | Meaning
<module> | The module (host) number
<task-ID> | The task identification number
<date> | The current date
<time> | The current time
X | Percentage of capacity reached (85, 90, or 95)
<CSN> | Call Sequence Number being processed at the time

When CDR storage reaches 100% of the number allowed, the following message is logged to the server error logfile:

<module> <task-ID> <date><time>: CDR space is re-used at <CSN>

At this point, new CDR records are overwritten onto the oldest ones, sequentially. This is called a wraparound. See "Maximum Number of Records" earlier in this section.

Example: 1 0341 03/22 3:28:15: CDR file is re-used at 605123

## Handling New Records

A new CDR record is not written to disk immediately, but is delayed for a certain period of time to reduce disk access. CDR normally writes to disk all records received once every 180 seconds, or when the CDR record block is full (64 records). You can change this delay from anywhere between 10 and 600 seconds with the Maximum Delay parameter.

Decreasing this parameter is not recommended, as it could impact server performance. Increasing this parameter, while improving performance, leaves you at risk of losing more data in the event of a power outage or server failure.

Any changes you make to the report configuration take effect immediately. However, you have to exit the Report Menu in order for the CDR Configuration changes to be saved. New CDR records coming into the server while the report menu is accessed are not always available if you run a report. In order to get the latest records, you might have to exit the Report Menu and then reenter it to include the newest records.

## Deleting CDR Records

CDR allows you to erase the contents of the entire CDR storage space. Deleting records does not reset the server’s Call Sequence Number, however. For example, if CDR records numbered 100000 through 200000 were stored before you deleted them, the next CDR record received is assigned Call Sequence Number 200001.

Since CDR automatically overwrites old records when storage space is full, it is not necessary to delete records routinely after each download.

You must delete existing CDR records if you are lowering the maximum number of records stored; otherwise, the lower number does not take effect, and the space is not released for use as accounting records.

## CDR Disk Storage Worksheet

Worksheet for computing CDR Disk Storage:

Instruction | Your Answer | Comments
1. Ports in NuPoint Unified Messaging server |  |
2. Average calls per day |  |
3. Number of days between CDR downloads |  |
4. Call adjustment |  | CDR records per call, usually = 1
5. Multiply ports x calls x days x adjustment (1 x 2 x 3 x 4) |  | Total CDR records
6. Divide (5) by 64 |  | 64 records per block
7. Round up to next whole number |  | Record blocks needed

Sample:

Instruction | Your Answer | Comments
1. Ports in NuPoint Unified Messaging server | 120 |
2. Average calls per day | 100 |
3. Number of days between CDR downloads | 7 |
4. Call adjustment | 1 | CDR records per call, usually = 1
5. Multiply ports x calls x days x adjustment (1 x 2 x 3 x 4) | 84000 | Total CDR Records
6. Divide (5) by 64 | 1312.5 | 64 records per block
7. Round up to next whole number | 1313 | Record blocks needed