sentry-sdk的SQS传输
项目描述
一个简单的AWS SQS sentry-sdk传输,借鉴了https://github.com/Netflix-Skunkworks/raven-sqs-proxy的想法。
它紧密遵循HTTPTransport,只是将HTTP POST部分替换为SQS Send Message。
安装
要安装
pip install sentry-sqs-transport
以下是使用传输的示例(注意transport关键字参数)。
import sentry_sdk
from sentry_sdk.integrations.aws_lambda import AwsLambdaIntegration
from sentry_sqs_transport import SQSTransport
sentry_sdk.init(
dsn="https://00000000000000000000000000000000@sentry.example.org/11",
integrations=[AwsLambdaIntegration()],
transport=SQSTransport,
# Optional
sqs_queue_url='https://sqs.eu-west-2.amazonaws.com/000000000000/SomeQueue',
sqs_client_kwargs={'region_name': 'us-east-1'}
)
配置
要配置要使用的SQS队列,请在SDK初始化函数中将sqs_queue_url传递为值,即SQS队列URL。您还可以设置环境变量SENTRY_SQS_QUEUE_URL。
sqs_client_kwargs参数应是一个字典,将被传递到boto3客户端,如boto3.client('sqs', **sqs_client_kwargs)。
SQS消息格式
放置在SQS队列上的消息格式是一个JSON有效负载,如下例所示。正文是SDK通常要发布的base64形式的内容,也是gzip压缩的。
{
"method": "POST",
"headers": {
"User-Agent": "string",
"X-Sentry-Auth": "string",
"Content-Type": "application/json",
"Content-Encoding": "gzip",
},
"url": "https://sentry.example/org",
"body": "base64 string"
}
Sentry SQS消费者
在resources文件夹中有一个简单的lambda函数,将消费这些sentry事件并从SQS队列中发送到sentry。
待办事项
添加测试
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
sentry-sqs-transport-1.0.1.tar.gz (9.6 kB 查看哈希值)
构建分发
关闭
哈希值 for sentry_sqs_transport-1.0.1-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ab9b710d2597ecbd71de91a6d148807a8f4eecfc9f82c8b2f98420d1fc9024d6 |
|
MD5 | 6d7152e988d13754d4523c7a449821c7 |
|
BLAKE2b-256 | d34696f9a6e49a204ce92b99636005d6093af8c707925d80b365bcfa687740be |