로그 - AWS IoT Greengrass

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

로그

logs 명령을 사용하여 코어 디바이스의 Greengrass 로그를 분석합니다.

get

Greengrass 로그 파일을 수집, 필터링 및 시각화합니다. 이 명령은 JSON 형식의 로그 파일만 지원합니다. nucleus 구성에서 로깅 형식을 지정할 수 있습니다.

시놉시스
greengrass-cli logs get [--log-dir path/to/a/log/folder] [--log-file path/to/a/log/file] [--follow true | false ] [--filter <filter> ] [--time-window <start-time>,<end-time> ] [--verbose ] [--no-color ] [--before <value> ] [--after <value> ] [--syslog ] [--max-long-queue-size <value> ]
인수
  • --log-dir, -ld. 로그 파일을 확인할 디렉터리의 경로(예: /greengrass/v2/logs). --syslog와 함께 사용하지 않습니다. 각 추가 디렉터리에 대해 별도의 인수를 사용하여 지정합니다. --log-dir 또는 --log-file 중 하나 이상을 사용해야 합니다. 단일 명령에서 두 인수를 모두 사용할 수도 있습니다.

  • --log-file, -lf. 사용하려는 로그 디렉터리의 경로. 각 추가 디렉터리에 대해 별도의 인수를 사용하여 지정합니다. --log-dir 또는 --log-file 중 하나 이상을 사용해야 합니다. 단일 명령에서 두 인수를 모두 사용할 수도 있습니다.

  • --follow, -fol. 발생하는 로그 업데이트 표시. Greengrass CLI는 계속 실행되고 지정된 로그에서 읽습니다. 시간대를 지정하면 모든 시간대가 종료된 후 Greengrass CLI가 로그 모니터링을 중지합니다.

  • --filter, -f. 필터로 사용할 키워드, 정규식 또는 키-값 페어. 이 값을 문자열, 정규식 또는 키-값 페어로 제공하세요. 각 추가 필터에 대해 별도의 인수를 사용하여 지정합니다.

    평가 시 단일 인수에 지정된 여러 필터가 OR 연산자로 분리되고, 추가 인수에 지정된 필터가 AND 연산자와 결합됩니다. 예를 들어 명령에 --filter "installed" --filter "name=alpha,name=beta"가 포함된 경우 Greengrass CLI는 키워드 installed와 값이 alpha 또는 betaname 키가 모두 포함된 로그 메시지를 필터링하고 표시합니다.

  • --time-window, -t. 로그 정보를 표시할 시간대. 정확한 타임스탬프와 상대 오프셋을 모두 사용할 수 있습니다. <begin-time>,<end-time> 형식으로 이 정보를 제공해야 합니다. 시작 시간 또는 종료 시간을 지정하지 않으면 해당 옵션의 값은 현재 시스템 날짜 및 시간으로 기본 설정됩니다. 각 추가 시간대에 대해 별도의 인수를 사용하여 지정합니다.

    Greengrass CLI는 타임스탬프에 대해 다음 형식을 지원합니다.

    • yyyy-MM-DD(예: 2020-06-30). 이 형식을 사용할 때 시간은 기본적으로 00:00:00으로 설정됩니다.

      yyyyMMDD(예: 20200630). 이 형식을 사용할 때 시간은 기본적으로 00:00:00으로 설정됩니다.

      HH:mm:ss(예: 15:30:45). 이 형식을 사용할 때 날짜는 기본적으로 현재 시스템의 날짜로 설정됩니다.

      HH:mm:ssSSS(예: 15:30:45). 이 형식을 사용할 때 날짜는 기본적으로 현재 시스템의 날짜로 설정됩니다.

      YYYY-MM-DD'T'HH:mm:ss'Z'(예: 2020-06-30T15:30:45Z).

      YYYY-MM-DD'T'HH:mm:ss(예: 2020-06-30T15:30:45).

      yyyy-MM-dd'T'HH:mm:ss.SSS(예: 2020-06-30T15:30:45.250).

    상대 오프셋은 현재 시스템 시간에서 시간 오프셋을 지정합니다. Greengrass CLI는 상대 오프셋에 대해 +|-[<value>h|hr|hours][valuem|min|minutes][value]s|sec|seconds 형식을 지원합니다.

    예를 들어 현재 시간에서 1시간~2시간 15분 사이 전의 시간대를 지정하는 인수는 --time-window -2h15min,-1hr입니다.

  • --verbose. 로그 메시지의 모든 필드 표시. --syslog와 함께 사용하지 않습니다.

  • --no-color, -nc. 색상 코딩 제거. 로그 메시지의 기본 색상 코딩은 굵은 빨간색 텍스트 사용입니다. ANSI 이스케이프 시퀀스를 사용하기 때문에 UNIX 계열 터미널만 지원합니다.

  • --before, -b. 일치하는 로그 항목 앞에 표시할 줄 수. 기본값은 0.

  • --after, -a. 일치하는 로그 항목 뒤에 표시할 줄 수. 기본값은 0.

  • --syslog. RFC3164에서 정의한 syslog 프로토콜을 사용하여 모든 로그 파일 처리. --log-dir--verbose와 함께 사용하지 않습니다. syslog 프로토콜에서 사용하는 형식: "<$Priority>$Timestamp $Host $Logger ($Class): $Message". 로그 파일을 지정하지 않으면 Greengrass CLI는 /var/log/messages, /var/log/syslog 또는 /var/log/system.log 위치에서 로그 메시지를 읽습니다.

    AWS IoT Greengrass는 현재 Windows 코어 디바이스에서 이 기능을 지원하지 않습니다.

  • --max-log-queue-size, -m. 메모리에 할당할 최대 로그 항목 수. 이 옵션을 사용하여 메모리 사용량을 최적화합니다. 기본값은 100입니다.

출력

다음 예제는 이 명령을 실행할 때 생성되는 출력을 보여줍니다.

$ sudo greengrass-cli logs get --verbose \ --log-file /greengrass/v2/logs/greengrass.log \ --filter deployment,serviceName=DeploymentService \ --filter level=INFO \ --time-window 2020-12-08T01:11:17,2020-12-08T01:11:22 2020-12-08T01:11:17.615Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.DeploymentService: Current deployment finished. {DeploymentId=44d89f46-1a29-4044-ad89-5151213dfcbc, serviceName=DeploymentService, currentState=RUNNING} 2020-12-08T01:11:17.675Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.IotJobsHelper: Updating status of persisted deployment. {Status=SUCCEEDED, StatusDetails={detailed-deployment-status=SUCCESSFUL}, ThingName=MyThing, JobId=22d89f46-1a29-4044-ad89-5151213dfcbc

list-keywords

로그 파일을 필터링하는 데 사용할 수 있는 키워드 제안을 표시합니다.

시놉시스
greengrass-cli logs list-keywords [arguments]
인수

None

출력

다음 예제는 이 명령을 실행할 때 생성되는 출력을 보여줍니다.

$ sudo greengrass-cli logs list-keywords Here is a list of suggested keywords for Greengrass log: level=$str thread=$str loggerName=$str eventType=$str serviceName=$str error=$str
$ sudo greengrass-cli logs list-keywords --syslog Here is a list of suggested keywords for syslog: priority=$int host=$str logger=$str class=$str

list-log-files

지정된 디렉터리에 있는 로그 파일을 표시합니다.

시놉시스
greengrass-cli logs list-log-files [arguments]
인수

--log-dir, -ld. 로그 파일을 확인할 디렉터리의 경로.

출력

다음 예제는 이 명령을 실행할 때 생성되는 출력을 보여줍니다.

$ sudo greengrass-cli logs list-log-files -ld /greengrass/v2/logs/ /greengrass/v2/logs/aws.greengrass.Nucleus.log /greengrass/v2/logs/main.log /greengrass/v2/logs/greengrass.log Total 3 files found.