CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송
4433 단어 람다파이썬slack-apiAWSCloudWatchLogs
slack api로 이동하여 앱 만들기
bot를 작성하는 방법이나 slack에의 메시지 투고의 방법은 이하의 기사에서 소개하고 있습니다.
파이썬 코드의 디렉토리 구조
디렉토리 구조는 다음과 같습니다.
디렉토리 구조sendLogToSlack
├── lambda_function.py
├── postslack.py
└── slack_sdk
slack_sdk 설치
slack_sdk는 lambda의 표준 모듈이 아니므로,
pip로 설치한 다음 zip으로 패키징해야 합니다.
slack_sdk를 패키지에 포함mkdir sendLogToSlack
cd sendLogToSlack
pip install slack_sdk -t ./
ぁmb다 _훙 c치온. py
lambda_function.pyimport zlib
import base64
import postslack
import json
def lambda_handler(event, context):
data = zlib.decompress(base64.b64decode(event['awslogs']['data']), 16+zlib.MAX_WBITS)
data_json = json.loads(data)
log_json = json.loads(json.dumps(data_json["logEvents"][0], ensure_ascii=False))
postslack.SendSlackMessage(str(log_json))
이쪽의 기사를 참고로 했습니다.
Postsack. py
postslack.pyfrom slack_sdk import WebClient
from slack_sdk.errors import SlackApiError
def SendSlackMessage(message):
client = WebClient(token='your_token')
response=client.chat_postMessage(channel='your_channel', text=message)
slack_sdk의 사용법에 관해서는 이 기사에서 소개하고 있습니다.
패키징
lambda에 업로드하기 위해 zip 명령으로 패키지화합니다.
sendLogToSlackzip -r sendslack *
lambda에 업로드
계속
여기까지 할 수 있으면 나머지 작업은 좀 더입니다.
CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송 - 후편 - 에 계속합니다.
Reference
이 문제에 관하여(CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/e808a9ae0e0003e5e796
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
디렉토리 구조는 다음과 같습니다.
디렉토리 구조
sendLogToSlack
├── lambda_function.py
├── postslack.py
└── slack_sdk
slack_sdk 설치
slack_sdk는 lambda의 표준 모듈이 아니므로,
pip로 설치한 다음 zip으로 패키징해야 합니다.
slack_sdk를 패키지에 포함mkdir sendLogToSlack
cd sendLogToSlack
pip install slack_sdk -t ./
ぁmb다 _훙 c치온. py
lambda_function.pyimport zlib
import base64
import postslack
import json
def lambda_handler(event, context):
data = zlib.decompress(base64.b64decode(event['awslogs']['data']), 16+zlib.MAX_WBITS)
data_json = json.loads(data)
log_json = json.loads(json.dumps(data_json["logEvents"][0], ensure_ascii=False))
postslack.SendSlackMessage(str(log_json))
이쪽의 기사를 참고로 했습니다.
Postsack. py
postslack.pyfrom slack_sdk import WebClient
from slack_sdk.errors import SlackApiError
def SendSlackMessage(message):
client = WebClient(token='your_token')
response=client.chat_postMessage(channel='your_channel', text=message)
slack_sdk의 사용법에 관해서는 이 기사에서 소개하고 있습니다.
패키징
lambda에 업로드하기 위해 zip 명령으로 패키지화합니다.
sendLogToSlackzip -r sendslack *
lambda에 업로드
계속
여기까지 할 수 있으면 나머지 작업은 좀 더입니다.
CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송 - 후편 - 에 계속합니다.
Reference
이 문제에 관하여(CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/e808a9ae0e0003e5e796
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mkdir sendLogToSlack
cd sendLogToSlack
pip install slack_sdk -t ./
lambda_function.py
import zlib
import base64
import postslack
import json
def lambda_handler(event, context):
data = zlib.decompress(base64.b64decode(event['awslogs']['data']), 16+zlib.MAX_WBITS)
data_json = json.loads(data)
log_json = json.loads(json.dumps(data_json["logEvents"][0], ensure_ascii=False))
postslack.SendSlackMessage(str(log_json))
이쪽의 기사를 참고로 했습니다.
Postsack. py
postslack.pyfrom slack_sdk import WebClient
from slack_sdk.errors import SlackApiError
def SendSlackMessage(message):
client = WebClient(token='your_token')
response=client.chat_postMessage(channel='your_channel', text=message)
slack_sdk의 사용법에 관해서는 이 기사에서 소개하고 있습니다.
패키징
lambda에 업로드하기 위해 zip 명령으로 패키지화합니다.
sendLogToSlackzip -r sendslack *
lambda에 업로드
계속
여기까지 할 수 있으면 나머지 작업은 좀 더입니다.
CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송 - 후편 - 에 계속합니다.
Reference
이 문제에 관하여(CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/e808a9ae0e0003e5e796
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from slack_sdk import WebClient
from slack_sdk.errors import SlackApiError
def SendSlackMessage(message):
client = WebClient(token='your_token')
response=client.chat_postMessage(channel='your_channel', text=message)
lambda에 업로드하기 위해 zip 명령으로 패키지화합니다.
sendLogToSlack
zip -r sendslack *
lambda에 업로드
계속
여기까지 할 수 있으면 나머지 작업은 좀 더입니다.
CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송 - 후편 - 에 계속합니다.
Reference
이 문제에 관하여(CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ms2geki/items/e808a9ae0e0003e5e796
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
여기까지 할 수 있으면 나머지 작업은 좀 더입니다.
CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송 - 후편 - 에 계속합니다.
Reference
이 문제에 관하여(CloudWatchLogs의 특정 문자열이 포함된 로그를 Slack으로 전송), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ms2geki/items/e808a9ae0e0003e5e796텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)