Configuring CDR ASN.1 Streamer Application
The CDR ASN.1 Streamer application loads configuration from application.yaml by default.
Kafka Configuration
Kafka Configuration Properties describes properties for configuring the CDR ASN.1 Streamer application with information about the Kafka broker and the application ID.
Property | Description |
---|---|
spring.kafka.streams.bootstrap-servers | Addresses of the Kafka brokers. The default value is
kafka:29092 . |
spring.kafka.streams.application-id | ID of the consumer group. The default value is
cdr-asn1-streamer . |
Topic Configuration
Topic Configuration Properties describes configuration properties for Kafka topics. Any CDR received on an inbound topic is processed and republished on an associated outbound topic. Optionally, a dead-letter queue topic can be configured for redirecting zero-length charging data records (CDRs) to Kafka.
Property | Description |
---|---|
streamer.topics | A list (items) of inbound and outbound Kafka topics. |
[item].inbound | Inbound topic. |
[item].outbound | Outbound topic. |
[item].dlq | (Optional) Dead-letter queue topic for zero-length CDRs. |
CDR ASN.1 Streamer Configuration Example
The following is a complete CDR ASN.1 Streamer configuration, including the properties described in Kafka Configuration Properties and Topic Configuration Properties.
streamer.mapping.cdrVersion
streamer.mapping.configurationFile
streamer.mapping.traceEnabled
logging:
file:
name: /var/log/mtx/cdr-asn1-streamer.log
spring:
kafka:
streams:
bootstrap-servers: kafka:29092
application-id: cdr-asn1-streamer
# Configuration related to the streamer app
streamer:
# Configuration related to topics mapping
topics:
- inbound: cdr
outbound: asn1
# Configuration related to mapping
mapping:
# The root configuration directory which will contain the mapping and message specifications
configurationDirectory: /opt/mtx/conf/
# The mapping configuration filename which should exist under ${streamer.mapping.configurationDirectory}/mappings
configurationFile: CDR-to-CHFRecord.yaml
# The CDR OpenAPI Specification (equates to the 3GPP 5GC specification version)
cdrVersion: R15-2019-12
# The CDR OpenAPI filename which should exist under ${streamer.mapping.configurationDirectory}/schema/CDR/${streamer.mapping.cdrVersion}/
cdrFilenames: cdr.yaml
# The ASN.1 Message Type to load
asn1MessageTypes: CHFChargingDataTypes
# Set this value to true to see full trace information about how the mapping occurred
traceEnabled: false
# If true, then the message will be wrapped in a dummy header. Otherwise it is assumed the messages being consumed will already have a header
wrapMessageInDummyHeader: true
# Web Server
server:
port: 8081
# Actuator End Points
management:
endpoints:
enabledByDefault: false
web:
exposure:
include: '*'
endpoint:
info:
enabled: true
health:
showDetails: always
enabled: true
metrics:
enabled: true
prometheus:
enabled: true
loggers:
enabled: true
metrics:
tags:
application: cdr-asn1-streamer