RRC logs from Ericsson Baseband eNodeB

Hi,

I am looking for commands to get rrc message logs from enb to analyse ue to enb rrc messages. Requesting to share the commands to capture the logs for the same

Hi, @Sooraj, for that you can use Cell Trace subscription in ENM’s pmic app.

Hi @vlr9999 can you please tell me what needs to be done after this?

@Sooraj on the Events tab select required events:


on the Scheduler select start/end time.

Hi @vlr9999 it is activated. Once the trace is completed do we need to go to shell terminal on scripting?

@Sooraj, yes. to decode result file connect to scripting VM and run decoder:

>lteCellTraceFileDecoder -h
usage: lteCellTraceFileDecoder [-h] [-nc] [-f {DEFAULT,JSON_FORMAT}]
                               [file_name]

LTE Celltrace Decoder - decodes LTE Celltrace files to a compressed csv format
Output directory will be /ericsson/tfd_cli_output/LTE_CELLTRACE

positional arguments:
  file_name             specify full path and name of the file to be decoded

optional arguments:
  -h, --help            show this help message and exit
  -nc, --no_compression
                        disable compression for the current file
  -f {DEFAULT,JSON_FORMAT}, --output_format {DEFAULT,JSON_FORMAT}
                        Output format of the decoded file

Full path to file must be specified
The disk usage volume is checked prior to decoding files and if the threshold is exceeded, no new files will be decoded until old files are deleted.
Decoder will skip already decoded files. File is considered decoded if a file with the same name and applicable extension exists in the output directory.

files will be distributed between pmic1 and pmic2

lteCellTraceFileDecoder -f JSON_FORMAT /ericsson/pmic1/CELLTRACE/pathtofile
lteCellTraceFileDecoder -f JSON_FORMAT /ericsson/pmic2/CELLTRACE/pathtofile

Hi @vlr9999 I have logged into scripting and changed the directory to /ericsson/pmic2/CELLTRACE . But when I gave ltecelldecoder it says command doesn’t exist

@Sooraj, perhaps it is not installed or you have no permissions.
Check for available deocders:

alias | grep -i decoder

or directory /ericsson/trace_file_decoder_cli/ content

Hi @vlr9999 this is what I am seeing

@Sooraj, got it, looks not so good. We have somthing different:

alias | grep -i decoder
alias decodeRncCtrFile='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type RNC_CTR'
alias decodeRncGpehFile='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type RNC_GPEH'
alias decodeRncUetrFile='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type RNC_UETR'
alias imsiImeiAnonymization='/usr/bin/python /ericsson/trace_file_decoder_cli/security/bin/imsi_imei_anonymization.pyc'
alias listDecoderSupportedNrEvents='cat /ericsson/trace_file_decoder_cli/info/supported_nr_events.txt'
alias lteCellTraceFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type LTE_CELLTRACE'
alias lteUeTraceFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type LTE_UETRACE'
alias mmeCtumFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type MME_CTUM'
alias mmeEbmFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type MME_EBM'
alias mmeUeTraceFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type MME_UETRACE'
alias nrCellTraceFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type NR_CELLTRACE'
alias nrUeTraceFileDecoder='/usr/bin/python /ericsson/trace_file_decoder_cli/bin/runner.pyc --type NR_UETRACE'

Contact your ENM team or support. Maybe that depends on contract with E///.

Thank you so much for your time and support @vlr9999. Let me see what I can do

Hi @vlr9999 just wanted to let you know, now I have decoder in my ENM

| grep -i decoder
alias decodeRncCtrFile=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type RNC_CTR’
alias decodeRncGpehFile=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type RNC_GPEH’
alias decodeRncUetrFile=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type RNC_UETR’
alias imsiImeiAnonymization=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/security/bin/imsi_imei_anonymization.py*’
alias listDecoderSupportedNrEvents=‘cat /ericsson/trace_file_decoder_cli/info/supported_nr_events.txt’
alias lteCellTraceFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type LTE_CELLTRACE’
alias lteUeTraceFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type LTE_UETRACE’
alias mmeCtumFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type MME_CTUM’
alias mmeEbmFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type MME_EBM’
alias mmeUeTraceFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type MME_UETRACE’
alias nrCellTraceFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type NR_CELLTRACE’
alias nrUeTraceFileDecoder=‘/usr/bin/python3 /ericsson/trace_file_decoder_cli/bin/runner.py* --type NR_UETRACE’

Hi, @Sooraj, nice! Let’s try do decode something.

Hi @vlr9999 I tried, but I am getting permission error. I read in CPI that The output files are stored in the predefined location: /ericsson/tfd_cli_output/<TRACE_TYPE>/. No other output directory can be defined. When I checked my ENM I couldn’t see a path tfd_cli_output.

image

I guess, we need to provide read/write access? I can see tfd_cli_output available.

Yes, it is permissions issue.

Why does the file distributed in two paths pmic1 and 2. Do we need to decode files present in both paths?

Hi, @Sooraj, one file saved to pmic1, next one - to pmic2. This is done for load distribution (or kind of).

Yes, decode both pmic1 and pmic2. Cell Trace round-robins the output files across the two for load spread, so a single session’s events are split between them — decode both and merge, or you will be missing half the UE’s messages.

One thing worth flagging for your actual goal (UE-to-eNB RRC): Cell Trace (CTR) is cell-wide, so you capture every UE’s events and then have to filter down to your UE by its context id. If you want one subscriber’s RRC signalling cleanly, use a UE Trace (UETR) subscription keyed on the IMSI instead and decode it with lteUeTraceFileDecoder (it is in your alias list). That follows just that UE and gives you its RRC messages without the cell-wide noise.

Decode to JSON for readable RRC:

lteUeTraceFileDecoder -f JSON_FORMAT

Same pmic1/pmic2 split applies, so decode the file from both sides.

In the Events tab, make sure the RRC message events are selected (the UL/DL DCCH/CCCH RRC ones) — those carry the actual ASN.1 RRC messages, and the decoded JSON exposes them per event. The exact event names your contract exposes are listed in the decoder’s info directory (same place as supported_nr_events.txt), so check there for the LTE set.

On the earlier permission error: /ericsson/tfd_cli_output// is a fixed output path and cannot be redirected, so the fix is write access to that directory for your user, not a different path.

Thank you so much, I have the admin access for ENM, please let me know what I need to do to get write access for the output path.