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.
...
Option | Shortcut | Description |
---|---|---|
--include-main | -m | Print 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
Item | Format | Example | Description |
---|---|---|---|
log level/date | {level}{date} | I1004 | Print log level and date without spaces. |
time | hour:min:sec.microsec | 16:44:13.790530 | - |
thread | t{thread ID} | t3056 | The thread ID that generated the log. |
logger | logger name | main | Logger name for dividing log category. |
tag | tag name | license c-:o | Represents a subrange of the logger, or represents the details of the channel. |
Log Level
Abbreviation | Level | Range |
---|---|---|
T | trace | Very detailed operation log |
D | debug | Used when problems arise that require debugging |
I | info | General information such as state change or behavior |
W | warning | A situation where an unintended problem occurs, but there is no problem in resuming or continuing the operation |
E | error | A situation where an unintended problem occurs and the action can not be continued |
C | critical | Serious error that can not keep the program running |
Log List
This document describes only from info level to critical level.
...
Main
Tag | Level | Format | Example | Description | Source file |
---|---|---|---|---|---|
| info | Compiled at {date} {time} | Oct 4 2018 09:04:38 | When DRX was compiled. | drx.cpp |
info | System Locale: {locale} | en_US.windows-1252 | Current system locale value. | drx.cpp | |
info | DRX path: {path} | C:\Program Files\DRX | Path where DRX is installed. This value is defined in the environment variable 'DRX_PATH'. | drx.cpp | |
info | EXE path: {path} | C:\Program Files\DRX\bin | The path where the currently executed DRX is located. | drx.cpp | |
info | Starting in foreground mode | - | Read all the settings and the program has been initialized. | drx.cpp | |
info | Starting in daemonize mode | - | Read all the settings and the program has been initialized. | drx.cpp | |
error | Initialization failed | - | Failed to read preferences. | drx.cpp | |
warning | Environment variable 'DRX_PATH' is not exists | - | - | instance.cpp | |
info | Closing drx | - | The last log in the process of terminating the DRX. | core.cpp | |
error | System error at quit. ({error_id}: {message}) | - | System error during DRX shutdown | core.cpp | |
info | Read resources configuration success | - | Read resource-specific settings from DRBD configuration. | core.cpp | |
warning | Read resources configuration failed | - | It can also happen if there is no resource. | core.cpp | |
info | License is available | - | - | core.cpp | |
error | License is not available | - | Exit the program after this log. | core.cpp | |
info | Resource create complete | - | All the configured resources have been created. IPC services are available. | core.cpp | |
info | Create resource [name] | - | - | drx_manager.cpp | |
error | Resource name [name] is already exists | The resource settings are invalid or you tried to add a resource that already exists. | drx_manager.cpp | ||
error | Failed to create resource [name]. {message} | An error occurred during resource creation. Exit the program after this log. | drx_manager.cpp | ||
info | Resource [name] deleted | You have deleted resources through IPC. | drx_manager.cpp | ||
info | IPC service started | - | An IPC server is created. | drx_manager.cpp | |
error | Failed to start IPC service | - | There is little chance of occurrence other than memory shortage. | drx_manager.cpp | |
error | System error while stopping. ({error_id}: {message}) | An error occurred during program termination. | drx_manager.cpp | ||
license | info | Verify license is available | - | The license verification process begins. | drx_manager.cpp |
info | License applied | - | Output when the license is applied with 'set license' command. | drx_manager.cpp | |
error | Failed to get drx path | - | The environment variable 'DRX_PATH' may not exist. | drx_manager.cpp | |
info | Checking license for [file_path] | C:\Program Files\DRX\drx.lic | Check the license file for that path. | drx_manager.cpp | |
error | Failed to initializing license system. {message} | Failed to read the license. The error is the output from RLM. | drx_manager.cpp | ||
error | License file not found at [file_path] | The file does not exist in the specified path. Output when using 'set license' command. | drx_manager.cpp | ||
error | Invalid License {product_name}({message}) | drx(-40) | Your license is invalid or has expired. The error number is from the RLM. | drx_manager.cpp | |
error | License Expired {product_name} | drx | The period has expired and can not be used. The license must be replaced. | drx_manager.cpp | |
info | License Status: {value} | Permanent | drx_manager.cpp | ||
plugins | info | All plugin loaded | plugin_manager.cpp | ||
critical | Failed to load crypto {name}. {message} | Exit the program after this log. | plugin_manager.cpp | ||
info | Crypto plugins loaded: {names} Crypto algorithms: {names} | OPENSSL PLAIN, AES128(OPENSSL) | Completed loading of encryption plugins. | plugin_manager.cpp | |
critical | Failed to load compressor {name}. {message} | Exit the program after this log. | plugin_manager.cpp | ||
info | Compressor plugins loaded: {names} Compressor algorithms: {names} | ZLIB, LZ4 PLAIN, GZIP(ZLIB), LZ4(LZ4) | Completion of loading of compression plugins. | plugin_manager.cpp | |
resource | info | Loading language: [file_path] | C:\Program Files\DRX\lang\english.ini | 'lang' entry in drx.conf | lang.cpp |
warning | Language file [file_path] not found | C:\Program Files\DRX\lang\english.ini | There is no problem running. | lang.cpp |
...
Config
Tag | Level | Format | Example | Description | Source file |
---|---|---|---|---|---|
info | Configuration loaded. [file_path] | The configuration file is successfully read. After this, apply the setting. | instance.cpp | ||
error | Failed to load [file_path]. {message} | [/opt/DRX/drx.conf]. /opt/DRX/drx.conf: cannot open file | Failed to read configuration file. Exit the program after this log. | instance.cpp | |
info | Configuration file is not exists. [file_path] | Use the default values. | instance.cpp | ||
error | Failed to get drbd configuration: {message} | 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 | |
info | DRBD configuration output: {standard_output} | Output of DRBD settings. | config.h | ||
info | DRBD '{resource}' configuration update DRBD configuration tokens: {config} | Update the settings of the resource. It is output when adjust command is executed. | config.h | ||
global | warning | Failed to parse connection timeout: {value} ({message}) | 'connect-timeout' entry in drx.conf | config.h | |
warning | Unknown console log level value: {value} | 'loglevel-stdout' entry in drx.conf | config.h | ||
warning | Unknown file log level value: {value} | 'loglevel-file' entry in drx.conf | config.h | ||
warning | Failed to parse log file max size: {value} | 'logfile-max-size' entry in drx.conf | config.h | ||
warning | Failed to parse log file max count: {value} ({message}) | 'logfile-max-count' entry in drx.conf | config.h | ||
warning | Unknown performance log value: {value} | 'performance-log' entry in drx.conf | config.h | ||
warning | Failed to parse process thread count: {value} ({message}) | 'process-thread-count' entry in drx.conf | config.h | ||
warning | Unknown ip verification value: {value} | 'ip-verification' entry in drx.conf | config.h | ||
warning | Failed to parse init timeout: {value} ({message}) | 'init-timeout' entry in drx.conf | config.h | ||
info | Set base dir: {path} | /opt/DRX | 'base-dir' entry in drx.conf | config.h | |
info | Set DRBD path: {path} | /etc/drbd.d/drbd.conf | 'drbd-conf' entry in drx.conf | config.h | |
info | Set connection timeout: {seconds} | 10 | 'connect-timeout' entry in drx.conf | config.h | |
info | Set init timeout: {seconds} | 10 | 'init-timeout' entry in drx.conf | config.h | |
info | Set console log level: {value} | info | 'loglevel-stdout' entry in drx.conf | config.h | |
info | Set file log level: {value} | info | 'loglevel-file' entry in drx.conf | config.h | |
info | Set log file max size: {value} | 10M | 'logfile-max-size' entry in drx.conf | config.h | |
info | Set log file max count: {value} | 10 | 'logfile-max-count' entry in drx.conf | config.h | |
info | Set performance log: {on/off} | off | 'performance-log' entry in drx.conf | config.h | |
info | Set process thread count: {value} | 8 | 'process-thread-count' entry in drx.conf | config.h | |
info | Set IP verification: {on/off} | on | 'ip-verification' entry in drx.conf | config.h |
packet_process_pool
Level | Format | Example | Description | Source File |
---|---|---|---|---|
info | Started (concurrency: {count}) | auto -> 8 | Packet processing thread started. This log will not be output if the configuration is not multithreaded. | packet_process_pool.cpp |
info | Resized to {count} | The number of threads has changed. Output when 'set process-thread-count' is used. | packet_process_pool.cpp | |
info | Stopped | - | Packet processing thread stopped. It is output during program termination. | packet_process_pool.cpp |
error | Load 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. | packet_process_pool.cpp |
error | Unload compressor - inconsistency between threads | - | packet_process_pool.cpp | |
error | Load decompressor - inconsistency between threads | - | packet_process_pool.cpp | |
error | Unload decompressor - inconsistency between threads | - | packet_process_pool.cpp | |
error | Load encrypto - inconsistency between threads | - | packet_process_pool.cpp | |
error | Unload encrypto - inconsistency between threads | - | packet_process_pool.cpp | |
error | Load decrypto - inconsistency between threads | - | packet_process_pool.cpp | |
error | Unload decrypto - inconsistency between threads | - | packet_process_pool.cpp | |
error | Compressor ({name}) is not available | If you try to use an unloaded plug-in, it will be output. | packet_processor.cpp | |
error | Compressor algorithm ({name}) is not available | If you try to use an unloaded plug-in, it will be output. | packet_processor.cpp | |
error | Crypto ({name}) is not available | If you try to use an unloaded plug-in, it will be output. | packet_processor.cpp | |
error | Failed to initialize {name} encrypto stream. ({message}) | The plug-in file may be broken. | packet_processor.cpp | |
error | Crypto algorithm ({name}) is not available | If you try to use an unloaded plug-in, it will be output. | packet_processor.cpp | |
error | Failed to initialize {name} decrypto stream. ({message}) | The plug-in file may be broken. | packet_processor.cpp | |
error | Compress stream error. ({error_id}) | The data or plug-in files may be broken. | packet_processor.cpp | |
error | Decompress stream error. ({error_id}) | The data or plug-in files may be broken. | packet_processor.cpp | |
error | Encrypt stream error. ({error_id}) | The data or plug-in files may be broken. | packet_processor.cpp | |
error | Decrypt 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
Item | Value | Description |
---|---|---|
Connection direction | a | Acceptor. (Local DRBD → Local DRX ← Remote DRX) |
c | Connector. (Local DRBD ← Local DRX → Remote DRX) | |
Channel type | - | Undefined. It is determined after connecting with DRBD. |
m | Meta channel | |
d | Data channel | |
Proxy location | i | Inside. Connection with local DRBD. |
o | Outside. Connection with remote DRX. |
...
Resource | Channel type | Proxy location | Tag |
---|---|---|---|
r0 | - | - | r0 |
Acceptor | - | r0:a | |
Inside | r0:a-:i | ||
Outside | r0:a-:o | ||
Connector | - | r0:c | |
Inside | r0:c-:i | ||
Outside | r0:c-:o |
Log List
Tag | Level | Format | Example | Description | Source file | ||
---|---|---|---|---|---|---|---|
info | Start resource Inside local({IP:Port}) <-> drbd({IP:Port}) Outside local({IP:Port}) <-> remote({IP:Port}) | Starts the connection of the resource. | drx_manager.cpp | ||||
error | Crypto ({name}) is not available | When an unloaded plugin is set. | drx_packet.cpp | ||||
error | Encrypto plugin ({name}) initialization failed. (error_id: {error_id}) | The plug-in file may be broken. | drx_packet.cpp | ||||
error | Decrypto plugin ({name}) initialization failed. (error_id: {error_id}) | The plug-in file may be broken. | drx_packet.cpp | ||||
error | Failed to encrypt stream. (error_id: {error_id}) | The data or plug-in files may be broken. | drx_packet.cpp | ||||
error | Failed to decrypt stream. (error_id: {error_id}) | The data or plug-in files may be broken. | drx_packet.cpp | ||||
error | Compressor ({name}) is not available | When an unloaded plugin is set. | drx_packet.cpp | ||||
error | Compressor algorithm ({name}) is not available | There is no plug-in to support remote DRX's compression algorithm. | drx_packet.cpp | ||||
error | Failed to compress stream. (error_id: {error_id}) | The data or plug-in files may be broken. | drx_packet.cpp | ||||
error | Failed to decompress stream. (error_id: {error_id}) | The data or plug-in files may be broken. | drx_packet.cpp | ||||
전체 채널 태그 a- c- | info | Connector created | - | Inside proxy created. | drx_channel.cpp | ||
error | Failed to create connector | - | Inside proxy creation failed. There is almost no possibility except memory shortage. | drx_channel.cpp | |||
info | Linker created | - | Outside proxy created. | drx_channel.cpp | |||
error | Failed to create linker | - | Outside proxy creation failed. There is almost no possibility except memory shortage. | drx_channel.cpp | |||
info | Channel state changed to ({type}) | bridging, bridged, established ...and so on | drx_channel.cpp | ||||
info | Channel type changed to ({type}) | 채널 유형이 변경됨 | meta or data | Channel type changed by DRBD connection. | drx_channel.cpp | ||
info | Connector & Linker initializedInside & Outside의 프록시가 모두 초기화됨 | - | Channel is ready to run. | drx_channel.cpp | |||
error | Linker initialization failed | Inside 프록시 초기화에 실패함 | - | Does not occur. | drx_channel.cpp | ||
error | Connector initialization failedOutside 프록시 초기화에 실패함 | - | Does not occur. | drx_channel.cpp | |||
info | Start channel채널의 동작이 시작됨 | - | The channel's thread was executed. | drx_channel.cpp | |||
info | Channel type duplicated. ({type} channel)채널 유형이 중복됨 | meta or data | The channel is a duplicate and will be disconnected. | drx_channel.cpp | |||
info | Set memory limit: {value} | BAB의 크기가 변경됨 | 100M | Does not occur. | channel_info.cpp | ||
info | Set bandwidth limit: {value}전송량 제한값이 변경됨 | 10M | channel_info.cpp | ||||
info | Set outbound inside connection: {IP}:{Port} | 채널의 연결설정이 변경됨 | Does not occur. | channel_info.cpp | |||
info | Set outbound outside connection: {IP}:{Port} | 채널의 연결설정이 변경됨 | Does not occur. | channel_info.cpp | |||
info | Set inbound inside connection: {IP}:{Port} | 채널의 연결설정이 변경됨 | Does not occur. | Does not occur. | channel_info.cpp | ||
info | Set inbound outside connection: {IP}:{Port}채널의 연결설정이 변경됨 | Does not occur. | channel_info.cpp | ||||
info | Set compressor: {name}채널의 압축 설정이 변경됨 | NONE, ZLIB, IQA, LZ4 | channel_info.cpp | ||||
info | Set compressor level: {num} | 채널의 압축 설정이 변경됨 | 0~9 | channel_info.cpp | |||
info | Set crypto: {name} | 채널의 암호화 설정이 변경됨 | NONENONE, OPENSSL | channel_info.cpp | |||
info | Set crypto key file: {file_path}채널의 암호화 키 파일이 변경됨 | Does not occur. | channel_info.cpp | ||||
info | Set block size: {value} | 채널의 block-size가 변경됨 | channel_info.cpp | ||||
info | Set minimum raw block size: {value} | 채널의 min-raw-block-size가 변경됨 | channel_info.cpp | ||||
a-:i a-:o | info | Start accept | - | drx_session_impl.cpp | |||
c-:i c-:o | info | Start connect | - | drx_session_impl.cpp | |||
전체 프록시 [ac][-md]:i | warning | System error while disconnect. ({error_id}: {message})연결 종료중에 오류가 발생함 | It is mostly the case that the connection is terminated already. | drx_session_impl.cpp | |||
warning | Initialization timeout. ({secs} seconds)초기화 시간 초과 | 10 | Timeout 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 | warning | Send to drbd failed. ({error_id}: {message})DRBD로 데이터 전송중 실패 | Already disconnected or will be disconnect after this. | drx_connector.cpp | |||
info | Start RX BAB senderRX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 시작 | Initiate a transfer to the local DRBD. | drx_connector.cpp | ||||
info | Flushing RX BAB | RX BAB의 남은 데이터를 모두 DRBD로 전송중 | Transferring all remaining data to DRBD. | drx_connector.cpp | |||
info | Stopping RX BAB sender | RX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 종료 | drx_connector.cpp | ||||
error | Failed to pop all datas from RX BAB | RX BAB를 비우는 작업에 실패 | Program is terminated during data transfer | drx_connector.cpp | |||
warning | Failed to receive. ({error_id}: {message})DRBD로부터 데이터를 읽는데 실패 | Already disconnected or will be disconnect after this. | drx_connector.cpp | ||||
info | Start TX BAB receiver | DRBD로부터 읽은 데이터를 TX BAB에 쓰는 작업을 시작 | Start writing the data Start writing the data read from DRBD to the buffer. | drx_connector.cpp | |||
warn | not yet bridged | TX BAB receiver를 시작하는 도중에 원격 DRX와의 연결이 끊김 | The connection to the remote DRX was lost while preparing the buffer. | drx_connector.cpp | |||
warn | Failed to receive from drbd. ({error_id}: {message}) | DRBD로부터 데이터를 읽는데 실패 | Failed to read data from DRBD. | drx_connector.cpp | |||
info | TX BAB receiver stoppedDRBD로부터 읽은 데이터를 TX BAB에 쓰는 작업을 종료 | drx_connector.cpp | |||||
warning | Receive timeout | DRBD로부터 데이터를 읽는 도중 타임아웃 발생 | Timeout occurs while reading data from DRBD. | drx_connector.cpp | |||
Inside Acceptor a[-md]:i | error | Accept failed. ({error_id}: {message})DRBD의 연결을 기다리는 작업에 실패 | Ex) The port number is being used elsewhere. | drx_connector.cpp | |||
error | Get remote endpoint failed. ({error_id}: {message})DRBD의 IP/Port를 조회하는데 실패 | Disconnected immediately after connecting | drx_connector.cpp | ||||
info | Accepted. (client: {DRBD IP}:{DRBD Port}) | DRBD가 DRX로 연결됨 | DRBD connected. Waiting for the channel type. | drx_connector.cpp | |||
warn | Receive magic packet failed. ({error_id}: {message}) | DRBD의 magic 패킷을 읽는 도중 오류가 발생함 | Already disconnected or will be disconnect after this. | drx_connector.cpp | |||
error | Unknown channel received | DRBD로부터 알수 없는 채널을 받음 | Peer is not a DRBD or is an incompatible version. | drx_connector.cpp | |||
info | Buddy channel got the same type. ({type})DRBD로부터 이미 연결되어있는 채널 타입을 받음 | meta or data | Channel type is a duplicate and will be disconnected. | drx_connector.cpp | |||
error | Accept exception. [{DRX IP}:{DRX Port}] ({error_id}: {message}) | Acceptor의 연결 및 초기화 과정에서 예외가 발생 | drx_connector.cpp | ||||
error | Accept exception. ({message}) | Acceptor의 연결 및 초기화 과정에서 예외가 발생 | drx_drx_connector.cpp | ||||
Inside Connector c[-md]:i | error | Set buffer size failed. ({message}) | DRBD와 연결하는 소켓의 버퍼 크기 설정에 실패 | It will be disconnect after this. | drx_connector.cpp | ||
warning | Connect to drbd failed. [{DRBD IP}:{DRBD Port}] ({error_id}: {message}) | DRBD에 연결하는데 실패함 | Check the DRBD resource settings and firewall. | drx_connector.cpp | |||
info | Connected at [{DRBD IP}:{DRBD Port}] | DRBD에 연결됨 | drx_connector.cpp | ||||
info | This 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: | 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 | ||
info | Local 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 | |||
error | Unknown 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 | |||
error | Remote crypto configuration not available. (remote: {value}) | 원격 DRX의 암호화 설정을 로컬 DRX에서 사용할 수 없다. | OPENSSL | Some plug-ins are not loaded. It will be disconnect after this. | drx_link.cpp | ||
error | Remote compressor configuration not available. (remote: {value}) | 원격 DRX의 압축 설정을 로컬 DRX에서 사용할 수 없다. | LZ4 level 1 | Some plug-ins are not loaded. It will be disconnect after this. | drx_link.cpp | ||
warning | Wrong 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 | ||||
warning | Receive header failed. ({error_id}: {message}) | 원격 DRX로부터 헤더를 읽는데 실패함 | Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Wrong 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 | |||
warning | Receive payload failed. ({error_id}: {message}) | 원격 DRX로부터 데이터를 읽는데 실패함 | Already disconnected or will be disconnect after this. | drx_link.cpp | |||
error | RX BAB not configured | RX BAB 미설정 상태에서 RX BAB 사용 루틴이 실행됨 | It will be disconnect after this. | drx_link.cpp | |||
info | Channel type received. ({type}) | 원격 DRX로부터 채널 유형을 받음 | drbd_meta or drbd_data | If the same channel is already connected, will be disconnect it. | drx_link.cpp | ||
warn | Event received ({value})원격 DRX로부터 이벤트를 받음 | It will be disconnect after this. | drx_link.cpp | ||||
error | Unhandled header received ({value}) | 원격 DRX로부터 알 수 없는 이벤트 유형을 받음 | Version with remote DRX may not match. | drx_link.cpp | |||
info | Start TX BAB sender (memlimit: {}, bwlimit: {}, blocksize: {}, min-raw-block-size: {})TX BAB의 데이터를 원격 DRX로 전송하는 작업 시작 | Starts data transfer using compression or encryption. | drx_link.cpp | ||||
info | Start TX BAB sender (memlimit: {}, bwlimit: {}, blocksize: {}) | TX BAB의 데이터를 원격 DRX로 전송하는 작업 시작 | Starts data transfer not using compression or encryption. | drx_link.cpp | |||
info | Flushing TX BAB | TX BAB의 남은 데이터를 모두 DRBD로 전송중 | 연결이 종료되었을 때 TX BAB의 남은 데이터를 전송하는 과정After disconnected, transferring remaining data from TX BAB to remote DRX | drx_link.cpp | |||
info | Stopping TX BAB sender | TX BAB의 데이터를 로컬 DRBD로 전송하는 작업을 종료 | drxdrx_link.cpp | ||||
error | Failed to pop all datas from TX BAB | TX BAB를 비우는 작업에 실패 | TX BAB를 비우는 도중에 프로그램이 종료되는 경우 | Resource was terminated while flushing the TX BAB. | drx_link.cpp | ||
warning | Send event {value} failed. ({error_id}: {message}) | 원격 DRX로 이벤트를 전송하는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Send 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 | warning | Connect 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 | |
info | Connected at [{remote DRX IP}:{remote DRX Port}] | 원격 DRX에 접속됨 | 소켓 설정과 초기화 패킷 전달을 시작한다After this, socket setup and initialization packet exchange are started. | drx_link.cpp | |||
error | Set socket options failed. ({message}) | 원격 DRX와의 소켓 옵션 설정에 실패함 | 버퍼 크기와 nodelay 설정을 적용하는데 실패함. 연결을 끊는다It will be disconnect after this. | drx_link.cpp | |||
warning | Send init packet failed. ({error_id}:{message}) | 원격 DRX로 초기화 패킷을 전송하는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Receive response packet failed. ({error_id}: {message}) | 원격 DRX로부터 초기화 응답 패킷을 받는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다. | Already disconnected or will be disconnect after this. | drx_link.cpp | ||
warning | Error while making init conversation between remote drx: {실패유형data} | 원격 DRX로부터 초기화 실패를 받음 | 연결을 끊는다It will be disconnect after this. | drx_link.cpp | |||
warning | Failed to receive init packet failed. ({error_id}: {message}) | 원격 DRX로부터 초기화 패킷을 받는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Send response packet failed. ({error_id}: {message}) | 원격 DRX로 초기화 응답 패킷을 전송하는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
Outside Acceptor a[-md]:o | error | Accept failed. ({error_id}: {message}) | DRX의 연결을 기다리는 작업에 실패 | 포트가 다른곳에서 이미 사용중인 경우가 많다. | drxIn most cases, the port number is already being used elsewhere. | drx_link.cpp | |
error | Get remote endpoint failed. ({error_id}: {message}) | 원격 DRX의 IP/Port를 조회하는데 실패 | 접속 직후 연결이 끊긴 경우이다Disconnected immediately after connecting. | drx_link.cpp | |||
info | Accepted. (client: {remote DRX IP}:{remote DRX Port}) | 원격 DRX가 로컬 DRX로 연결됨 | 소켓 설정과 초기화 패킷 전달을 시작한다After this, socket setup and initialization packet exchange are started. | drx_link.cpp | |||
warning | Receive init packet failed. ({error_id}: {message}) | 원격 DRX로부터 초기화 패킷을 받는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Send response packet failed. ({error_id}: {message}) | 원격 DRX로 초기화 응답 패킷을 전송하는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다. | drx_linkAlready disconnected or will be disconnect after this. | drx_link.cpp | ||
warning | Send init packet failed. ({error_id}: {message}) | 원격 DRX로 초기화 패킷을 전송하는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Receive response packet failed. ({error_id}: {message}) | 원격 DRX로부터 초기화 응답 패킷을 받는데 실패함 | 연결이 이미 끊겼거나 이 이후 연결을 끊는다Already disconnected or will be disconnect after this. | drx_link.cpp | |||
warning | Error while making init conversation between remote drx: {실패유형data} | 원격 DRX로부터 초기화 실패를 받음 | 연결을 끊는다It will be disconnect after this. | drx_link.cpp | |||
error | Accept exception. [{로컬 local DRX IP}:{로컬 local DRX Port}] ({error_id}:{message})Acceptor의 연결 및 초기화 과정에서 예외가 발생 | drx_link.cpp | |||||
error | Accept exception: {message} | Acceptor의 연결 및 초기화 과정에서 예외가 발생 | drx_link.drx_link.cpp | ||||
TX BAB RX BAB | info | {용량size} bytes allocated | BAB에 메모리가 할당됨 | 1GB | allocator.h | ||
error | Allocating {용량size} bytes failed | BAB 메모리 할당 실패 | 10GB메모리 부족 | Out of memory. | allocator.h | ||
info | {용량size} bytes freedBAB의 메모리가 해제됨 | 1GB | allocator.h | ||||
error | TX 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 | |||
error | block-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 | |||
error | Failed to allocate memory. {message} | BAB에 메모리 할당 실패 | 메모리 부족 | Out of memory. | ring_buffer.cpp | ||
error | Failed 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 | ||
error | Failed 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 | ||
error | Failed 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 | ||
error | Failed to decompress at {인덱스index} sizes: {원본 데이터 길이original_size}, {버퍼 길이} | 압축 해제 실패 (기타) | 잘못된 데이터이거나 압축 알고리즘을 지원하지 않아 압축 해제 실패buffer_size} | Unsuccessful decompression due to invalid data or compression algorithm is not supported. | packet_processor.cpp | ||
error | Compress stream error. ({error_id}) | 압축 실패 | 데이터 압축 실패. 오류 번호가 없을 수도 있다. | packet_processor.cpp | |||
error | Decompress stream error. ({error_id})압축 해제 실패 | 데이터 압축 해제 실패. 오류 번호가 없을 수도 있다. | packet_processor.cpp | ||||
error | Encrypt stream error. ({error_id}) | 암호화 실패 | 데이터 암호화 실패. 오류 번호가 없을 수도 있다. | packet_processor.cpp | |||
error | Decrypt stream error. ({error_id})복호화 실패 | 데이터 복호화 실패. 오류 번호가 없을 수도 있다. | packet_processor.cpp |
IPC
태그Tag | 레벨Level | 내용Format | 설명Description | 비고Source file | 소스 파일 |
---|---|---|---|---|---|
error | Error on accept. ({error_id}: {message})IPC 서비스의 accept 과정에서 오류가 발생함 | In most cases, the port number is already being used elsewhere. | ipc_server.cpp | ||
events | info | Notification start이벤트 전송 기능 시작 | It is output at program start. | ipc_event_notifier.cpp | |
info | Notification stopped이벤트 전송 기능 중지 | It is output during program termination. | ipc_event_notifier.cpp | ||
warning | Failed to get client endpoint. ({error_id}: {message}) | IPC 클라이언트의 IP/Port 조회 실패 | 연결 직후 끊긴 경우 | Disconnected immediately after connecting. | ipc_event_notifier.cpp |
info | client removed {IP}:{Port} | IPC 이벤트 조회 클라이언트의 연결이 종료됨Client disconnected to query IPC events. | ipc_event_notifier.cpp | ||
info | client added {IP}:{Port} | IPC 이벤트 조회 클라이언트가 연결됨A client has been connected to query IPC events. | ipc_event_notifier.cpp | ||
{IP}:{Port} | warning | Data transfer failed. ({error_id}: {message}) | IPC 클라이언트로 데이터 전송 실패 | ipc_server.cpp | |
error | Error 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 | 내용 | 설명 | 값의 예 | 비고 | 소스 파일Format | Example | Description | Source file |
---|---|---|---|---|---|---|---|---|
info | Signal: {시그널유형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 | ||
warning | Failed to register signal handler for {시그널유형type} | 해당 시그널 핸들러의 등록에 실패함 | SIGABRT, SIGFPE, SIGILL, SIGSEGV | 비정상 종료시 호출 스택을 출력하기 위한 시그널 등록에 실패함The program or environments may be unusual. | handler.cpp | |||
critical | Signal handling | 비정상 종료 시그널 발생 (Linux) | 프로그램 시그널 핸들링 방식으로 비정상 종료 상황을 핸들링함. | A termination signal has been detected. (linux) | handler.cpp | |||
critical | Exception handling (Unhandled) | 비정상 종료 시그널 발생 (Windows) | Windows API를 사용하여 비정상 종료 상황을 핸들링함.A termination signal has been detected. (windows) | handler.cpp | ||||
critical | Exception handling (Vectored) | 비정상 종료 시그널 발생 (Windows) | Windows API를 사용하여 비정상 종료 상황을 핸들링함. | A termination signal has been detected. (windows) | handler.cpp | |||
critical | Fatal exception: {예외유형type} stackdump [프레임frame] {심볼주소symbol_address} {함수명 function} ({파일명filename:라인번호line}) | 발생한 예외 출력 | 발생한 예외 종류와 호출 스택 출력Exception type and call stack output | stacktrace_linux.cpp stacktrace_windows.cpp |
...