0

CloudWatch에 cloud-init.log 개의 로그를 보내고 메트릭 필터를 만들어 Cloud Init가 실행되는 데 걸리는 시간을 추출하고 싶습니다.AWS Cloud Watch : 메트릭 필터 값 추출

Jun 24 12:06:51 ip-x-x-x-x [CLOUDINIT] util.py[DEBUG]: cloud-init mode 'modules' took 295.097 seconds (294.83) 

그리고 추출하고자하는 값이이 : took [number] seconds 그냥이 라인에 고유하므로 295.097

그것은 꽤 똑바로 앞으로 것 같은

샘플 로그 항목이 보인다. This guide on metric filter syntax은 JSON 로그에서 값을 추출하는 예제 만 보여주고 있으며 this official example list은이를 다루지 않습니다.

는 문서를 바탕으로, 나는 같은 생각 :

[..., "took", seconds] 

가 작동합니다,하지만 난 많은 행운이 없었어요.

도움이 될 것입니다.

답변

0

값을 추출하려면 json 또는 공백으로 구분 된 형식으로 로그를 포맷해야한다고 생각합니다. 위 예제의 경우 메시지에서 값을 추출하려고하기 때문에 어렵습니다. 당신은 아마 일을 단순화하는 로그 형식을 변경하려면 것

[month, day, time, ip, process, module, name, mode, modules, type=took, value, therest] 

:

그것은 추한하지만,이 작품

(메트릭 필터 편집기에서 테스트 $ 값 = 295.097을 제공합니다).