Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

개요

bsr은 로그 시스템을 통해 bsr 전반의 동작과정을 모니터링하고 문제가 발생했을 때 디버깅 할 수 있는 환경을 제공합니다. bsr 의 로그는 지정한 최대크기 만큼 실시간 파일로 기록되며 최대 파일크기 이상 초과 시 스스로 롤링합니다. 로그는 bsr 커널 모듈에서 기록하는 커널로그와 bsr 유틸리티에서 기록하는 응용로그로 분리되어 있어서 각각 개별적으로 저장됩니다.

로그 파일이 저장되는 경로는 다음과 같으며 windows는 notepad, linux는 vi로 직접 파일을 읽어서 볼 수 있습니다.

  • windows는 “%BSR_PATH%\..\log\” 경로에 저장됩니다.

  • linux는 “/var/log/bsr/” 경로에 저장됩니다.

유형

커널 로그는 시스템로그와 디버그로그 그리고 feature 로그로 분류되며 용도에 맞게 사용합니다.

  • 디버그 로그는 bsr의 일반적인 동작과 상태를 추적하기 위한 로그입니다.

  • 시스템 로그는 bsr 복제 운영에 문제가 발생하거나 시스템에 영향을 줄 만한 중요한 정보를 기록하기 위한 로그 입니다.

  • feature로그는 개발자를 위한 상세 디버그 로그로 일반 사용자는 사용할 필요가 없습니다.

응용로그는 bsr 유틸리티의 동작과정을 추적하기 위한 용도로 사용합니다.

조회

설정 정보

bsrcon /get_log_info 명령을 실행하여 로그 유형에 따른 수준, 롤링 파일 단위 정보를 확인할 수 있습니다.

>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

조회

시스템 로그를 제외한 모든 로그는 로그 저장 경로에서 로그파일을 직접 읽어서 조회할 수 있습니다.

시스템 로그

Windows 에서는 이벤트로그에서, Linux 에선 dmesg 명령을 통해 확인 합니다.

bsrwatch

bsr 의 동작과 상태를 실시간 추적하기 위한 용도로 bsrwatch 명령을 제공합니다. bsrwatch 명령은 커널로그가 기록되는 상황을 표준출력으로 실시간 확인할 수 있습니다.

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.

설정

bsrcon 명령을 통해 로그 수준과 로그파일 롤링 단위를 지정할 수 있습니다.

  • 로그 수준 및 로그 파일 저장 설정

    • 로그 수준 기본 값

      • system 로그는 err(3) 입니다.

      • debug 로그는 info(6) 입니다.

      • feature 로그는 none(0) 입니다.

    • 로그 파일 롤링 단위 기본 값

      • 커널로그 파일은 15 입니다.

      • 응용로그 파일은 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)
...

형식

  • 커널로그

    • “순서” “날짜” “시간” [함수] [로그 분류:로그 인덱스] “로그 수준” “로그 내용”

      00000219 09/15/2020 14:42:04.3936220 [bsr_bm_resize] [BITMAP:23] bsr_info<6> bsr r2/0 minor 4, ds(Attaching), dvflag(0x0): bitmap resize called with capacity(31451136)
  • 응용로그

    • “날짜” “시간” “로그 수준” [pid][함수][라인][실행 명령] “로그 내용”

      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).

  • No labels