Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

outline
Table of Contents
true

Summary

The DRX logs output the same logs to the following two paths.

...

The file being archived is appended with the date and time at that point in time. (ex: main_2018-11-22_1432.log)

Log View

The following types of commands are provided to output the active DRX log in real time.

...

OptionShortcutDescription
--include-main-mPrint the main log. If this option is not specified, only resource-specific logs are output.
--lines {num}-n {num}Output the last num lines. 

When you execute this command, you can continuously output the update of the log file and terminate it with Ctrl-C.

Configuration

The log-related items that can be set in the configuration file (drx.conf) are as follows.

...

However, the standard output level is ignored when running in service mode.

Output Format

level/data time thread logger:tag] message

Details By Item

ItemFormatExampleDescription
log level/date{level}{date}

I1004
C0928

Print log level and date without spaces.
Log levels are described below.

timehour:min:sec.microsec16:44:13.790530-
threadt{thread ID}t3056The thread ID that generated the log.
loggerlogger namemainLogger name for dividing log category.
tagtag namelicense
c-:o
Represents a subrange of the logger, or represents the details of the channel.

Log Level

AbbreviationLevelRange
TtraceVery detailed operation log
DdebugUsed when problems arise that require debugging
IinfoGeneral information such as state change or behavior
WwarningA situation where an unintended problem occurs, but there is no problem in resuming or continuing the operation
EerrorA situation where an unintended problem occurs and the action can not be continued
CcriticalSerious error that can not keep the program running

Log List

This document describes only from info level to critical level.

...

Main

TagLevelFormatExampleDescriptionSource file





















infoCompiled at {date} {time}Oct 4 2018 09:04:38When DRX was compiled.drx.cpp
infoSystem Locale: {locale}en_US.windows-1252Current system locale value.drx.cpp
infoDRX path: {path}C:\Program Files\DRXPath where DRX is installed.
This value is defined in the environment variable 'DRX_PATH'.
drx.cpp
infoEXE path: {path}C:\Program Files\DRX\binThe path where the currently executed DRX is located.drx.cpp
infoStarting in foreground mode-Read all the settings and the program has been initialized.drx.cpp
infoStarting in daemonize mode-Read all the settings and the program has been initialized.drx.cpp
errorInitialization failed-Failed to read preferences.drx.cpp
warningEnvironment variable 'DRX_PATH' is not exists--instance.cpp
infoClosing drx-The last log in the process of terminating the DRX.core.cpp
errorSystem error at quit. ({error_id}: {message})-System error during DRX shutdowncore.cpp
infoRead resources configuration success-Read resource-specific settings from DRBD configuration.core.cpp
warningRead resources configuration failed-It can also happen if there is no resource.core.cpp
infoLicense is available--core.cpp
errorLicense is not available-Exit the program after this log.core.cpp
infoResource create complete-All the configured resources have been created. IPC services are available.core.cpp
info

Create resource [name]

--drx_manager.cpp
errorResource name [name] is already exists
The resource settings are invalid or you tried to add a resource that already exists.drx_manager.cpp
errorFailed to create resource [name]. {message}
An error occurred during resource creation. Exit the program after this log.drx_manager.cpp
infoResource [name] deleted
You have deleted resources through IPC.drx_manager.cpp
infoIPC service started-An IPC server is created.drx_manager.cpp
errorFailed to start IPC service-There is little chance of occurrence other than memory shortage.drx_manager.cpp
errorSystem error while stopping. ({error_id}: {message})
An error occurred during program termination.drx_manager.cpp
licenseinfoVerify license is available-The license verification process begins.drx_manager.cpp
infoLicense applied-Output when the license is applied with 'set license' command.drx_manager.cpp
errorFailed to get drx path-The environment variable 'DRX_PATH' may not exist.drx_manager.cpp
infoChecking license for [file_path]C:\Program Files\DRX\drx.licCheck the license file for that path.drx_manager.cpp
errorFailed to initializing license system. {message}
Failed to read the license. The error is the output from RLM.drx_manager.cpp
errorLicense file not found at [file_path]
The file does not exist in the specified path. Output when using 'set license' command.drx_manager.cpp
errorInvalid License {product_name}({message})drx(-40)Your license is invalid or has expired. The error number is from the RLM.drx_manager.cpp
errorLicense Expired {product_name}drxThe period has expired and can not be used. The license must be replaced.drx_manager.cpp
infoLicense Status: {value}Permanent
drx_manager.cpp
plugins



infoAll plugin loaded

plugin_manager.cpp
criticalFailed to load crypto {name}. {message}
Exit the program after this log.plugin_manager.cpp
infoCrypto plugins loaded: {names}
Crypto algorithms: {names}
OPENSSL
PLAIN, AES128(OPENSSL)
Completed loading of encryption plugins.plugin_manager.cpp
criticalFailed to load compressor {name}. {message}
Exit the program after this log.plugin_manager.cpp
infoCompressor plugins loaded: {names}
Compressor algorithms: {names}
ZLIB, LZ4
PLAIN, GZIP(ZLIB), LZ4(LZ4)
Completion of loading of compression plugins.plugin_manager.cpp
resourceinfoLoading language: [file_path]C:\Program Files\DRX\lang\english.ini'lang' entry in drx.conflang.cpp
warningLanguage file [file_path] not foundC:\Program Files\DRX\lang\english.iniThere is no problem running.lang.cpp

...

Config

TagLevelFormatExampleDescriptionSource file




infoConfiguration loaded. [file_path]
The configuration file is successfully read. After this, apply the setting.instance.cpp
errorFailed to load [file_path]. {message}[/opt/DRX/drx.conf]. /opt/DRX/drx.conf: cannot open fileFailed to read configuration file. Exit the program after this log.instance.cpp
infoConfiguration file is not exists. [file_path]
Use the default values.instance.cpp
error

Failed to get drbd configuration: {message}
Output: {error_output}

Can't get drbd configuration. (exit_code: 10)
C:\\Program Files\\DRBD\\etc\\drbd.conf:1: Parse error: 'global | common | resource | skip | include' expected, 
but got '∩'
Failed to read DRBD settings.config.h
infoDRBD configuration output: {standard_output}
Output of DRBD settings.config.h
infoDRBD '{resource}' configuration update
DRBD configuration tokens: {config}

Update the settings of the resource. It is output when adjust command is executed.config.h
globalwarningFailed to parse connection timeout: {value} ({message})
'connect-timeout' entry in drx.confconfig.h
warningUnknown console log level value: {value}
'loglevel-stdout' entry in drx.confconfig.h
warningUnknown file log level value: {value}
'loglevel-file' entry in drx.confconfig.h
warningFailed to parse log file max size: {value}
'logfile-max-size' entry in drx.confconfig.h
warningFailed to parse log file max count: {value} ({message})
'logfile-max-count' entry in drx.confconfig.h
warningUnknown performance log value: {value}
'performance-log' entry in drx.confconfig.h
warningFailed to parse process thread count: {value} ({message})
'process-thread-count' entry in drx.confconfig.h
warningUnknown ip verification value: {value}
'ip-verification' entry in drx.confconfig.h
warningFailed to parse init timeout: {value} ({message})
'init-timeout' entry in drx.confconfig.h
infoSet base dir: {path}/opt/DRX'base-dir' entry in drx.confconfig.h
infoSet DRBD path: {path}/etc/drbd.d/drbd.conf'drbd-conf' entry in drx.confconfig.h
infoSet connection timeout: {seconds}10'connect-timeout' entry in drx.confconfig.h
infoSet init timeout: {seconds}10'init-timeout' entry in drx.confconfig.h
infoSet console log level: {value}info'loglevel-stdout' entry in drx.confconfig.h
infoSet file log level: {value}info'loglevel-file' entry in drx.confconfig.h
infoSet log file max size: {value}10M'logfile-max-size' entry in drx.confconfig.h
infoSet log file max count: {value}10'logfile-max-count' entry in drx.confconfig.h
infoSet performance log: {on/off}off'performance-log' entry in drx.confconfig.h
infoSet process thread count: {value}8'process-thread-count' entry in drx.confconfig.h
infoSet IP verification: {on/off}on'ip-verification' entry in drx.confconfig.h

packet_process_pool

LevelFormatExampleDescriptionSource File
infoStarted (concurrency: {count})auto -> 8Packet processing thread started.
This log will not be output if the configuration is not multithreaded.
packet_process_pool.cpp
infoResized to {count}
The number of threads has changed. Output when 'set process-thread-count' is used.packet_process_pool.cpp
infoStopped-Packet processing thread stopped. It is output during program termination.packet_process_pool.cpp
errorLoad compressor - inconsistency between threads-

There was a thread-specific difference while loading or unloading one plug-in per thread.

Probably there is a problem with the algorithm of the program.
You need to patch it with the modified version.

packet_process_pool.cpp
errorUnload compressor - inconsistency between threads-packet_process_pool.cpp
errorLoad decompressor - inconsistency between threads-packet_process_pool.cpp
errorUnload decompressor - inconsistency between threads-packet_process_pool.cpp
errorLoad encrypto - inconsistency between threads-packet_process_pool.cpp
errorUnload encrypto - inconsistency between threads-packet_process_pool.cpp
errorLoad decrypto - inconsistency between threads-packet_process_pool.cpp
errorUnload decrypto - inconsistency between threads-packet_process_pool.cpp
errorCompressor ({name}) is not available
If you try to use an unloaded plug-in, it will be output.packet_processor.cpp
errorCompressor algorithm ({name}) is not available
If you try to use an unloaded plug-in, it will be output.packet_processor.cpp
errorCrypto ({name}) is not available
If you try to use an unloaded plug-in, it will be output.packet_processor.cpp
errorFailed to initialize {name} encrypto stream. ({message})
The plug-in file may be broken.packet_processor.cpp
errorCrypto algorithm ({name}) is not available
If you try to use an unloaded plug-in, it will be output.packet_processor.cpp
errorFailed to initialize {name} decrypto stream. ({message})
The plug-in file may be broken.packet_processor.cpp
errorCompress stream error. ({error_id})
The data or plug-in files may be broken.packet_processor.cpp
errorDecompress stream error. ({error_id})
The data or plug-in files may be broken.packet_processor.cpp
errorEncrypt stream error. ({error_id})
The data or plug-in files may be broken.packet_processor.cpp
errorDecrypt stream error. ({error_id})
The data or plug-in files may be broken.packet_processor.cpp

Resource-specific logger

Resource-specific loggers are assigned the name of the resource as the name of the logger.

...

{connection direction}{channel type}:{proxy location}

Details by tag

Each item

ItemValueDescription
Connection directiona​Acceptor. (Local DRBD → Local DRX ← Remote DRX)
cConnector. (Local DRBD ← Local DRX → Remote DRX)
Channel type-Undefined. It is determined after connecting with DRBD.
mMeta channel
dData channel
Proxy locationiInside. Connection with local DRBD.
oOutside. Connection with remote DRX.

...

ResourceChannel typeProxy locationTag
​r0





-

-r0​
Acceptor

-r0:a
Inside​r0:a-:i
Outsider0:a-:o
Connector

-r0:c
Insider0:c-:i
Outsider0:c-:o

Log List

TagLevelFormatExampleDescriptionSource file










infoStart resource
 Inside  local({IP:Port}) <-> drbd({IP:Port})
 Outside local({IP:Port}) <-> remote({IP:Port})

Starts the connection of the resource.drx_manager.cpp
errorCrypto ({name}) is not available
When an unloaded plugin is set.drx_packet.cpp
errorEncrypto plugin ({name}) initialization failed. (error_id: {error_id})
The plug-in file may be broken.drx_packet.cpp
errorDecrypto plugin ({name}) initialization failed. (error_id: {error_id})
The plug-in file may be broken.drx_packet.cpp
errorFailed to encrypt stream. (error_id: {error_id})
The data or plug-in files may be broken.drx_packet.cpp
errorFailed to decrypt stream. (error_id: {error_id})
The data or plug-in files may be broken.drx_packet.cpp
errorCompressor ({name}) is not available
When an unloaded plugin is set.drx_packet.cpp
errorCompressor algorithm ({name}) is not available
There is no plug-in to support remote DRX's compression algorithm.drx_packet.cpp
errorFailed to compress stream. (error_id: {error_id})
The data or plug-in files may be broken.drx_packet.cpp
errorFailed to decompress stream. (error_id: {error_id})
The data or plug-in files may be broken.drx_packet.cpp

전체 채널 태그

a-
am
ad

c-
cm
cd

infoConnector created-Inside proxy created.drx_channel.cpp
errorFailed to create connector-Inside proxy creation failed. There is almost no possibility except memory shortage.drx_channel.cpp
infoLinker created-Outside proxy created.drx_channel.cpp
errorFailed to create linker-Outside proxy creation failed. There is almost no possibility except memory shortage.drx_channel.cpp
infoChannel state changed to ({type})bridging, bridged, established ...and so on
drx_channel.cpp
infoChannel type changed to ({type})채널 유형이 변경됨meta or dataChannel type changed by DRBD connection.drx_channel.cpp
infoConnector & Linker initializedInside & Outside의 프록시가 모두 초기화됨-Channel is ready to run.drx_channel.cpp
errorLinker initialization failedInside 프록시 초기화에 실패함-Does not occur.drx_channel.cpp
errorConnector initialization failedOutside 프록시 초기화에 실패함-Does not occur.drx_channel.cpp
infoStart channel채널의 동작이 시작됨-The channel's thread was executed.drx_channel.cpp
infoChannel type duplicated. ({type} channel)채널 유형이 중복됨meta or dataThe channel is a duplicate and will be disconnected.drx_channel.cpp
infoSet memory limit: {value}BAB의 크기가 변경됨100MDoes not occur.channel_info.cpp
infoSet bandwidth limit: {value}전송량 제한값이 변경됨10M
channel_info.cpp
infoSet outbound inside connection: {IP}:{Port}채널의 연결설정이 변경됨
Does not occur.channel_info.cpp
infoSet outbound outside connection: {IP}:{Port}채널의 연결설정이 변경됨
Does not occur.channel_info.cpp
infoSet inbound inside connection: {IP}:{Port}채널의 연결설정이 변경됨Does not occur.Does not occur.channel_info.cpp
infoSet inbound outside connection: {IP}:{Port}채널의 연결설정이 변경됨
Does not occur.channel_info.cpp
infoSet compressor: {name}채널의 압축 설정이 변경됨NONE, ZLIB, IQA, LZ4
channel_info.cpp
infoSet compressor level: {num}채널의 압축 설정이 변경됨0~9
channel_info.cpp
infoSet crypto: {name}채널의 암호화 설정이 변경됨NONENONE, OPENSSL
channel_info.cpp
infoSet crypto key file: {file_path}채널의 암호화 키 파일이 변경됨
Does not occur.channel_info.cpp
infoSet block size: {value}채널의 block-size가 변경됨

channel_info.cpp
infoSet minimum raw block size: {value}채널의 min-raw-block-size가 변경됨

channel_info.cpp
a-:i
a-:o
infoStart accept-
drx_session_impl.cpp
c-:i
c-:o
infoStart connect-
drx_session_impl.cpp

전체 프록시

[ac][-md]:i
[ac][-md]:o

warningSystem error while disconnect. ({error_id}: {message})연결 종료중에 오류가 발생함
It is mostly the case that the connection is terminated already.drx_session_impl.cpp
warningInitialization timeout. ({secs} seconds)초기화 시간 초과10Timeout occurs after sending and receiving initialization packet after connection. It is likely to be a network problem.drx_session_impl.cpp

Inside 전체

[ac][-md]:i

warningSend to drbd failed. ({error_id}: {message})DRBD로 데이터 전송중 실패
Already disconnected or will be disconnect after this.drx_connector.cpp
infoStart RX BAB senderRX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 시작
Initiate a transfer to the local DRBD.drx_connector.cpp
infoFlushing RX BABRX BAB의 남은 데이터를 모두 DRBD로 전송중
Transferring all remaining data to DRBD.drx_connector.cpp
infoStopping RX BAB senderRX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 종료

drx_connector.cpp
errorFailed to pop all datas from RX BABRX BAB를 비우는 작업에 실패
Program is terminated during data transferdrx_connector.cpp
warningFailed to receive. ({error_id}: {message})DRBD로부터 데이터를 읽는데 실패
Already disconnected or will be disconnect after this.drx_connector.cpp
infoStart TX BAB receiverDRBD로부터 읽은 데이터를 TX BAB에 쓰는 작업을 시작
Start writing the data Start writing the data read from DRBD to the buffer.drx_connector.cpp
warnnot yet bridgedTX BAB receiver를 시작하는 도중에 원격 DRX와의 연결이 끊김
The connection to the remote DRX was lost while preparing the buffer.drx_connector.cpp
warnFailed to receive from drbd. ({error_id}: {message})DRBD로부터 데이터를 읽는데 실패
Failed to read data from DRBD.drx_connector.cpp
infoTX BAB receiver stoppedDRBD로부터 읽은 데이터를 TX BAB에 쓰는 작업을 종료

drx_connector.cpp
warningReceive timeoutDRBD로부터 데이터를 읽는 도중 타임아웃 발생
Timeout occurs while reading data from DRBD.drx_connector.cpp

Inside Acceptor

a[-md]:i

errorAccept failed. ({error_id}: {message})DRBD의 연결을 기다리는 작업에 실패
Ex) The port number is being used elsewhere.drx_connector.cpp
errorGet remote endpoint failed. ({error_id}: {message})DRBD의 IP/Port를 조회하는데 실패
Disconnected immediately after connectingdrx_connector.cpp
infoAccepted. (client: {DRBD IP}:{DRBD Port})DRBD가 DRX로 연결됨
DRBD connected. Waiting for the channel type.drx_connector.cpp
warnReceive magic packet failed. ({error_id}: {message})DRBD의 magic 패킷을 읽는 도중 오류가 발생함
Already disconnected or will be disconnect after this.drx_connector.cpp
errorUnknown channel receivedDRBD로부터 알수 없는 채널을 받음

Peer is not a DRBD or is an incompatible version.

drx_connector.cpp
infoBuddy channel got the same type. ({type})DRBD로부터 이미 연결되어있는 채널 타입을 받음meta or dataChannel type is a duplicate and will be disconnected.drx_connector.cpp
errorAccept exception. [{DRX IP}:{DRX Port}] ({error_id}: {message})Acceptor의 연결 및 초기화 과정에서 예외가 발생

drx_connector.cpp
errorAccept exception. ({message})Acceptor의 연결 및 초기화 과정에서 예외가 발생

drx_drx_connector.cpp

Inside Connector

c[-md]:i

errorSet buffer size failed. ({message})DRBD와 연결하는 소켓의 버퍼 크기 설정에 실패
It will be disconnect after this.drx_connector.cpp
warningConnect to drbd failed. [{DRBD IP}:{DRBD Port}] ({error_id}: {message})DRBD에 연결하는데 실패함
Check the DRBD resource settings and firewall.drx_connector.cpp
infoConnected at [{DRBD IP}:{DRBD Port}]DRBD에 연결됨

drx_connector.cpp
infoThis is not active channel. Reject사용할 수 없는 채널이므로 연결을 끊는다
This can occur if the connection between the remote DRX and the remote DRBD is lost during the connection with DRBD.drx_connector.cpp

Outside 전체

[ac][-md]:o

info

Local configuration:
 block-size: {value}
 compressor selected: {name}
 crypto selected: {name}
 compressors available: {name_list}
 cryptos available: {name_list}

로컬 DRX의 통신 설정을 출력

Local configuration:
 block-size: 1.00 MB
 compressor selected: ZLIB level 1
 crypto selected: NONE
 compressors available: ZLIB, LZMA
 cryptos available: OPENSSL
It is output during connection preparation with remote DRX.drx_link.cpp
infoLocal configuration:
 block-size: {value}
 compressor selected: {name}
 crypto selected: {name}
 compressors available: {name_list}
 cryptos available: {name_list}
원격 DRX의 통신 설정을 출력

After connection with remote DRX, It is output when it is confirmed that the peer is DRX.

drx_link.cpp
errorUnknown initialize packet received. (type: {value})원격 DRX에서 알 수 없는 초기화 패킷을 받음A numeric value that corresponds to the channel type.Peer is not DRX or has a different version.drx_link.cpp
errorRemote crypto configuration not available. (remote: {value})원격 DRX의 암호화 설정을 로컬 DRX에서 사용할 수 없다.OPENSSL

Some plug-ins are not loaded. It will be disconnect after this.

drx_link.cpp
errorRemote compressor configuration not available. (remote: {value})원격 DRX의 압축 설정을 로컬 DRX에서 사용할 수 없다.LZ4 level 1Some plug-ins are not loaded. It will be disconnect after this.drx_link.cpp
warningWrong size header received. (read: {size}, requested: {size}, payload: {size}, error: {error_id})원격 DRX로부터 잘못된 길이의 헤더를 받음
This can happen if the connection is lost during transmission. It will be disconnect after this.drx_link.cpp
warningReceive header failed. ({error_id}: {message})원격 DRX로부터 헤더를 읽는데 실패함
Already disconnected or will be disconnect after this.drx_link.cpp
warningWrong size payload received. (read: {size}, requested: {size}, error: {error_id})원격 DRX로부터 잘못된 길이의 데이터를 받음
This This can happen if the connection is lost during transmission. It will be disconnect after this.drx_link.cpp
warningReceive payload failed. ({error_id}: {message})원격 DRX로부터 데이터를 읽는데 실패함
Already disconnected or will be disconnect after this.drx_link.cpp
errorRX BAB not configuredRX BAB 미설정 상태에서 RX BAB 사용 루틴이 실행됨
It will be disconnect after this.drx_link.cpp
infoChannel type received. ({type})원격 DRX로부터 채널 유형을 받음drbd_meta or drbd_dataIf the same channel is already connected, will be disconnect it.drx_link.cpp
warnEvent received ({value})원격 DRX로부터 이벤트를 받음
It will be disconnect after this.drx_link.cpp
errorUnhandled header received ({value})원격 DRX로부터 알 수 없는 이벤트 유형을 받음
Version with remote DRX may not match.drx_link.cpp
infoStart TX BAB sender (memlimit: {}, bwlimit: {}, blocksize: {}, min-raw-block-size: {})TX BAB의 데이터를 원격 DRX로 전송하는 작업 시작

Starts data transfer using compression or encryption.

drx_link.cpp
infoStart TX BAB sender (memlimit: {}, bwlimit: {}, blocksize: {})TX BAB의 데이터를 원격 DRX로 전송하는 작업 시작

Starts data transfer not using compression or encryption.

drx_link.cpp
infoFlushing TX BABTX BAB의 남은 데이터를 모두 DRBD로 전송중
연결이 종료되었을 때 TX BAB의 남은 데이터를 전송하는 과정After disconnected, transferring remaining data from TX BAB to remote DRXdrx_link.cpp
infoStopping TX BAB senderTX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 종료

drxdrx_link.cpp
errorFailed to pop all datas from TX BABTX BAB를 비우는 작업에 실패TX BAB를 비우는 도중에 프로그램이 종료되는 경우
Resource was terminated while flushing the TX BAB.drx_link.cpp
warningSend event {value} failed. ({error_id}: {message})원격 DRX로 이벤트를 전송하는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningSend stream failed. ({error_id}: {message})원격 DRX로 데이터 스트림을 전송하는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp




drx_link.cpp

Outside Connector

c[-md]:o

warningConnect to remote drx failed. [{remote DRX IP}:{remote DRX Port}] ({error_id}: {message})원격 DRX에 접속하는데 실패함원격 DRX의 가동 상태와 방화벽을 점검해야 한다.
drx_link

Check the remote DRX status and firewall.

drx_link.cpp
infoConnected at [{remote DRX IP}:{remote DRX Port}]원격 DRX에 접속됨
소켓 설정과 초기화 패킷 전달을 시작한다After this, socket setup and initialization packet exchange are started.drx_link.cpp
errorSet socket options failed. ({message})원격 DRX와의 소켓 옵션 설정에 실패함
버퍼 크기와 nodelay 설정을 적용하는데 실패함. 연결을 끊는다It will be disconnect after this.drx_link.cpp
warningSend init packet failed. ({error_id}:{message})원격 DRX로 초기화 패킷을 전송하는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningReceive response packet failed. ({error_id}: {message})원격 DRX로부터 초기화 응답 패킷을 받는데 실패함연결이 이미 끊겼거나 이 이후 연결을 끊는다.
Already disconnected or will be disconnect after this.drx_link.cpp
warningError while making init conversation between remote drx: {실패유형data}원격 DRX로부터 초기화 실패를 받음
연결을 끊는다It will be disconnect after this.drx_link.cpp
warningFailed to receive init packet failed. ({error_id}: {message})원격 DRX로부터 초기화 패킷을 받는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningSend response packet failed. ({error_id}: {message})원격 DRX로 초기화 응답 패킷을 전송하는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp

Outside Acceptor

a[-md]:o

errorAccept failed. ({error_id}: {message})DRX의 연결을 기다리는 작업에 실패포트가 다른곳에서 이미 사용중인 경우가 많다.
drxIn most cases, the port number is already being used elsewhere.drx_link.cpp
errorGet remote endpoint failed. ({error_id}: {message})원격 DRX의 IP/Port를 조회하는데 실패
접속 직후 연결이 끊긴 경우이다Disconnected immediately after connecting.drx_link.cpp
infoAccepted. (client: {remote DRX IP}:{remote DRX Port})원격 DRX가 로컬 DRX로 연결됨
소켓 설정과 초기화 패킷 전달을 시작한다After this, socket setup and initialization packet exchange are started.drx_link.cpp
warningReceive init packet failed. ({error_id}: {message})원격 DRX로부터 초기화 패킷을 받는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningSend response packet failed. ({error_id}: {message})원격 DRX로 초기화 응답 패킷을 전송하는데 실패함연결이 이미 끊겼거나 이 이후 연결을 끊는다.
drx_linkAlready disconnected or will be disconnect after this.drx_link.cpp
warningSend init packet failed. ({error_id}: {message})원격 DRX로 초기화 패킷을 전송하는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningReceive response packet failed. ({error_id}: {message})원격 DRX로부터 초기화 응답 패킷을 받는데 실패함
연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this.drx_link.cpp
warningError while making init conversation between remote drx: {실패유형data}원격 DRX로부터 초기화 실패를 받음
연결을 끊는다It will be disconnect after this.drx_link.cpp
errorAccept exception. [{로컬 local DRX IP}:{로컬 local DRX Port}] ({error_id}:{message})Acceptor의 연결 및 초기화 과정에서 예외가 발생

drx_link.cpp
errorAccept exception: {message}Acceptor의 연결 및 초기화 과정에서 예외가 발생

drx_link.drx_link.cpp

TX BAB

RX BAB

info{용량size} bytes allocatedBAB에 메모리가 할당됨1GB
allocator.h
errorAllocating {용량size} bytes failedBAB 메모리 할당 실패10GB메모리 부족Out of memory.allocator.h
info{용량size} bytes freedBAB의 메모리가 해제됨1GB
allocator.h
errorTX BAB is too small. Please set it to {용량size} bytes or more.TX BAB의 가용용량이 block-size보다 작다
block-size를 줄이거나 TX BAB의 용량을 늘려야 한다You should reduce the block-size or increase the size of the TX BAB.allocator.h
errorblock-size is too big. Please set it to {size} bytes or less.RX BAB의 가용용량이 block-size보다 작다
block-size를 줄여야 한다You should reduce the block-size.allocator.h
errorFailed to allocate memory. {message}BAB에 메모리 할당 실패메모리 부족
Out of memory.ring_buffer.cpp
errorFailed to encrypt packet. buffer_size: {버퍼 길이size}, encrypted_size: {암호화된 데이터 길이}암호화 실패 (버퍼 길이 문제)암호화된 데이터의 길이가 버퍼 길이보다 길어서 버퍼에 담을 수 없다size}
The length of the encrypted data is longer than the buffer length and can not be buffered.packet_processor.cpp
errorFailed to decrypt packet. buffer_size: {버퍼 길이size}, decrypted_size: {복호화된 데이터 길이}복호화 실패 (버퍼 길이 문제)복호화된 데이터의 길이가 버퍼 길이보다 길어서 버퍼에 담을 수 없다size}
The length of the decrypted data is longer than the buffer length and can not be buffered..packet_processor.cpp
errorFailed to decompress packet. buffer_size: {버퍼 길이size}, decompressed_size: {해제된 데이터 길이}압축 해제 실패 (버퍼 길이 문제)압축 해제된 데이터의 길이가 버퍼 길이보다 길어서 버퍼에 담을 수 없다size}
The length of the decompressed data is longer than the buffer length and can not be buffered.packet_processor.cpp
errorFailed to decompress at {인덱스index} sizes: {원본 데이터 길이original_size}, {버퍼 길이}압축 해제 실패 (기타)잘못된 데이터이거나 압축 알고리즘을 지원하지 않아 압축 해제 실패buffer_size}
Unsuccessful decompression due to invalid data or compression algorithm is not supported.packet_processor.cpp
errorCompress stream error. ({error_id})압축 실패데이터 압축 실패. 오류 번호가 없을 수도 있다.

packet_processor.cpp
errorDecompress stream error. ({error_id})압축 해제 실패데이터 압축 해제 실패. 오류 번호가 없을 수도 있다.

packet_processor.cpp
errorEncrypt stream error. ({error_id})암호화 실패데이터 암호화 실패. 오류 번호가 없을 수도 있다.

packet_processor.cpp
errorDecrypt stream error. ({error_id})복호화 실패데이터 복호화 실패. 오류 번호가 없을 수도 있다.

packet_processor.cpp

IPC

태그Tag레벨Level내용Format설명Description비고Source file소스 파일

errorError on accept. ({error_id}: {message})IPC 서비스의 accept 과정에서 오류가 발생함In most cases, the port number is already being used elsewhere.ipc_server.cpp
eventsinfoNotification start이벤트 전송 기능 시작It is output at program start.ipc_event_notifier.cpp
infoNotification stopped이벤트 전송 기능 중지It is output during program termination.ipc_event_notifier.cpp
warningFailed to get client endpoint. ({error_id}: {message})IPC 클라이언트의 IP/Port 조회 실패연결 직후 끊긴 경우Disconnected immediately after connecting.ipc_event_notifier.cpp
infoclient removed {IP}:{Port}IPC 이벤트 조회 클라이언트의 연결이 종료됨Client disconnected to query IPC events.ipc_event_notifier.cpp
infoclient added {IP}:{Port}IPC 이벤트 조회 클라이언트가 연결됨A client has been connected to query IPC events.ipc_event_notifier.cpp
{IP}:{Port}warningData transfer failed. ({error_id}: {message})IPC 클라이언트로 데이터 전송 실패
ipc_server.cpp
errorError on payload. ({message})IPC 서비스의 처리과정에서 오류가 발생함In addition to data transfer, there may have been an error processing the IPC service.ipc_server.cpp

crash_handler

레벨Level내용설명값의 예비고소스 파일FormatExampleDescriptionSource file
infoSignal: {시그널유형type}IPC 서비스의 accept 과정에서 오류가 발생함SIGINT 또는 SIGTERM실행중 Ctrl+C를 입력한 경우 SIGINT, 외부에서 프로세스를 종료하는 경우 SIGTERM이 발생한다. 이 메시지 이후 프로그램을 정상 종료한다SIGINT or SIGTERM

SIGINT occurs when exiting with Ctrl + C, and SIGTERM occurs when kill by external. After this message, It will be exit the program normally.

handler.cpp
warningFailed to register signal handler for {시그널유형type}해당 시그널 핸들러의 등록에 실패함SIGABRT, SIGFPE, SIGILL, SIGSEGV비정상 종료시 호출 스택을 출력하기 위한 시그널 등록에 실패함The program or environments may be unusual.handler.cpp
criticalSignal handling비정상 종료 시그널 발생 (Linux)프로그램 시그널 핸들링 방식으로 비정상 종료 상황을 핸들링함.
A termination signal has been detected. (linux)handler.cpp
criticalException handling (Unhandled)비정상 종료 시그널 발생 (Windows)
Windows API를 사용하여 비정상 종료 상황을 핸들링함.A termination signal has been detected. (windows)handler.cpp
criticalException handling (Vectored)비정상 종료 시그널 발생 (Windows)Windows API를 사용하여 비정상 종료 상황을 핸들링함.
A termination signal has been detected. (windows)handler.cpp
criticalFatal exception: {예외유형type}
stackdump [프레임frame] {심볼주소symbol_address} {함수명 function} ({파일명filename:라인번호line})
발생한 예외 출력

발생한 예외 종류와 호출 스택 출력Exception type and call stack outputstacktrace_linux.cpp
stacktrace_windows.cpp

...