Overview
bsr monitors the operation of the entire bsr through the log system and provides an environment for debugging when problems occur. The log of bsr is recorded as a real-time file as much as the specified maximum size and rolls itself when it exceeds the maximum file size. The log is divided into the kernel log recorded by the bsr kernel module and the application log recorded by the bsr utility, and is stored individually.
The path where the log file is saved is as follows and you can read the file directly with a normal text editor.
“%BSR_PATH%..\log\” on windows
“/var/log/bsr/” on linux
Types
Kernel log is classified into system log, debug log, and feature log and is used according to the purpose.
The debug log is for tracking the general behavior and status of bsr.
The system log is a log for recording important information that may cause problems with bsr replication operation or affect the system.
The feature log is a detailed debug log for developers and does not need to be used by ordinary users.
Application log is used to track the operation process of the bsr utility.
Lookup
Configuration Information
You can check the level of log type and rolling file unit information by running the bsrcon /get_log_info command.
>bsrcon /get_log_info Current log level. system-lv : err(3) debug-lv : info(6) feature-lv : 0 Number of log files that can be saved. Maximum size of one log file is 50M. bsrdriver : 15 bsradm : 2 bsrsetup : 2 bsrmeta : 2
Lookup log
All logs except the system log can be viewed by reading the log file directly from the log storage path.
System log
In Windows, check the event log, and in Linux, use the dmesg command.
bsrwatch
bsrwatch command is provided for real-time tracking of bsr behavior and status. The bsrwatch command can check the status of the kernel log being recorded in real time on standard output.
C:\Windows\system32\>bsrwatch
C:\Windows\system32\>cd C:\Program Files\bsr\bin/../log
C:\Program Files\bsr\log>Powershell.exe -command "Get-Content bsrlog.txt -Wait -Tail 100"
00000001 07/17/2020 09:26:58.513 [wait_for_add_device] bsr_info<6>[0xFFFFE000669F2880] wait for device to be connected for log file generation.(C:\Program Files\bsr)
00000002 07/17/2020 09:26:58.513 [initRegistry] bsr_info<6>[0xFFFFE000666BC880] registry_path[\Registry\Machine\System\CurrentControlSet\Services\bsr]
00000003 07/17/2020 09:26:58.513 [initRegistry] bsr_info<6>[0xFFFFE000666BC880] bypass_level=0, read_filter=0, use_volume_lock=1, netlink_tcp_port=5678, daemon_tcp_port=5679, ver=1.5
00000004 07/17/2020 09:26:58.513 [bsr_init] bsr_info<6>[0xFFFFE000666BC880] initialized. Version: 1.6-A2 (api:2/proto:86-114)
00000005 07/17/2020 09:26:58.513 [bsr_init] bsr_info<6>[0xFFFFE000666BC880] 1.6-T1(BSR-73) GIT-hash: dee8f9c build by DEV3-KBLD+Administrator@dev3-kbld, Wed Jul 15 14:29:17 2020
00000006 07/17/2020 09:26:58.513 [bsr_init] bsr_info<6>[0xFFFFE000666BC880] registered as block device major 147
00000007 07/17/2020 09:26:58.513 [DriverEntry] bsr_info<6>[0xFFFFE000666BC880] MVF Driver loaded.
00000008 07/17/2020 09:26:58.544 [WskGetNPI] bsr_info<6>[0xFFFFE0006741A040] WskCaptureProviderNPI start.
Configurations
You can specify the log level and the log file rolling unit through the bsrcon command.
Log level and log file rolling settings
default level
The system log is err(3).
The debug log is info(6).
The feature log is none(0).
rolling unit
The kernel log file is 15.
The application log file is 2.
bsrcon usage: bsrcon cmds options ... /maxlogfile_cnt [LogFileMaxCount : 0 ~ 1000] /climaxlogfile_cnt [adm, setup, meta] [LogFileMaxCount : 0 ~ 255] /minlog_lv [sys, dbg] [Level : 0~7] level info, emerg(0) alert(1) criti(2) err(3) warning(4) notice(5) info(6) debug(7) /minlog_lv feature [flag : 0,1,2,4] level info, none(0) oos(1) latency(2) verify(4) ...
Format
kernel log
order, date, time, function, log level, log content
00000068 07/15/2020 13:43:11.343 [state_change_lock] bsr_warn<4>[0xFFFFE0013C788880] worker should not initiate state changes with CS_SERIALIZE current:FFFFF801C0154B90 resource->worker.task:FFFFE0013E78BC20 00000069 07/15/2020 13:43:11.343 [print_state_change] bsr_info<6>bsr r0 pnode-id:0, cs(StandAlone), prole(Unknown), cflag(0x0), scf(0x2a): bsr_adm_connect, conn( StandAlone -> Unconnected ) 00000070 07/15/2020 13:43:11.343 [NetlinkWorkThread] bsr_info<6>[0xFFFFE0013C788880] bsr netlink cmd(BSR_ADM_CONNECT:10) done (cmd_pending:0) <-
application log
date, time, log level, pid, function, line, run command, log content
2020/07/15 16:18:39 bsr_erro [pid:2060][func:err][line:1056][cmd:NULL] bsradm: Unknown command 'resoure' 2020/07/15 16:18:44 bsr_erro [pid:1160][func:err][line:1056][cmd:status] '10' not defined in your config (for this host).