python-3.x - Slack Webhook 的 AWS Lambda 函数问题
问题描述
我正在使用 AWS lambda 函数向我们的松弛通道发送警报。但是,由于一些未知问题,我没有收到松弛警报,甚至没有从 AWS lambda 函数收到任何类型的错误消息。日志表示该函数成功运行,没有任何错误,但我没有收到任何警报
代码:
import json, sys, csv, os
import requests
def lambda_handler(event, context):
def Send2Slack(message):
if __name__ == '__main__':
print('inside slack function')
url = "webhook_URL"
title = (f"New Incoming Message")
slack_data = {
"username": "abc",
"channel" : "xyz",
"attachments": [
{
"color": "#ECB22E",
"fields": [
{
"title": title,
"value": message,
"short": "false",
}
]
}
]
}
byte_length = str(sys.getsizeof(slack_data))
headers = {'Content-Type': "application/json", 'Content-Length': byte_length}
response = requests.post(url, data=json.dumps(slack_data), headers=headers)
if response.status_code != 200:
raise Exception(response.status_code, response.text)
output = "Hello Slack "
Send2Slack(output)
请让我知道我做错了什么并帮助我解决这个问题。
解决方案
我可以回答这个问题。
def Send2Slack(message):
if __name__ == '__main__':
一旦我if __name__ == '__main__':
从send2slack
功能中删除它就起作用了。
否则,我无法进入该功能。感谢你的帮助。
推荐阅读
- excel - 遍历列并且只取项目一次
- mysql - 两个表上的内部连接的mysql语法错误
- clojure - Clojure 函数/宏应用函数,直到返回 nil 以外的值
- flutter - 堆栈中的 GestureDetector 被前台小部件阻止。HitTestBehavior.translucent 没有按预期工作
- spring-boot - 断路器和隔板模式有什么区别?
- sql - 加密和解密返回类型为字符串的字符串值
- python - 无法编写一个接受 3 个参数并返回矩形坐标 (x,y,h,w) 的函数
- git - 如何在共同父项更改后自动合并连续分支
- java - 在 android - Java 中编辑视图内容时应用程序崩溃
- android - 从 api 获取数据并将其存储在数据类中