CloudWatch에서 발생하는 accesslog 그룹을 람다함수의 트리거로 하여, JSON 파일을 받아 다음 애플리케이션으로 전해주기위해 간단히 lambda를 사용하고자 했다.

두가지 시도를 해보았다.

  1. event가 어떻게 오는지 조회 후, 로그를 가공을 하면 되겠다.
  2. lambda 블루프린트를 찾아보자. 혹시나 cloudwatch와 관련된 것이 있을 수도 있다.

Event 조회

간단히 hello-world로 작성된 람다를 만들고 console.log(event) 를 해보았다.

2022-07-12T02:34:51.159Z	0ffaabb0-99d6-495b-9a41-1d73d39c15c5	INFO	{
  awslogs: {
    data: 'H4sIAAAAAAAAAN2S224TMRCGX8XyVSuS3Rnb40O4iiCkUCKQshJITRS5wW2tbrLRrgOCqu/OhMMNgkskhA+y/I89Y38zD3KXhiHepubzIcmJfD5tppvFbLmczmdyJLtP+9SzTEqjDs56DZbltrud993xwJa43bKDipXv+rL0Ke7YkMegyKgYIZgYbgJC5BPD8XrY9vlQcrd/kduS+kFOrmRJQ5Hrbw5mH9O+nMQHmT+wH22DJeIBzqIh78lbUMpqS1Y57QFUcCZY7XUg8oaPBOSVg5XMnytxx+9ES46CVp4chtHPT7N7dFQp5KmwcijG3K9Q1a+Oba04zATURJuJIfEEuK3FSs5njajFRdO8rbHClRQKQGjjHNvGvF3JRfclt22sqQJxtojbvC/dcPdUvNyX1AoWxJuleC8QNkgbdy6mh0Ob3qXry1xq0q7SVpxdXjSL1yPR5vsk5ml7352LZ3d9t0s1gq7g1MUy3sQ+/7iykvJx9Csz1Eob7SwP4BySpmAMEAAnM1iHzJHBBFKBrEH3J2bB4d9hZv89Zha981xW2gDY4FxQQWkVNNfWiRFSUHiCRl5Z0sb+nlkAB+a/ZbZ+/Ary/AqBOAQAAA=='
  }
}

데이터가 읽을 수 없는 것으로 전송되어 옴을 확인할 수 있다. 내가 생각했던 JSON 형태로 오지 않는다. 더 처리를 해주어야 하는 것 같다. 일단 다른 방법으로 넘어갔다.

Lambda 블루프린트 조회

Cloudwatch와 관련된 블루프린트가 있나 조회해보았다.

Untitled

위와 같이 kinesis 관련된 것이 있고, sumologic, splunk, loggy와 같이 클라우드 솔루션 회사와 관련된 블루프린트만 존재했다. 물론 직접 람다 함수를 짤 수도 있지만, 우선 다른 방법을 더 찾아보아야겠다.