Sentry 企业级数据安全解决方案 - Relay 配置选项

本文涉及的产品
数据安全中心,免费版
日志服务 SLS,月写入数据量 50GB 1个月
简介: Sentry 企业级数据安全解决方案 - Relay 配置选项

Relay 的配置记录在文件 .relay/config.yml 中。要更改此位置,请将 --config 选项传递给任何 Relay 命令:


❯ ./relay run --config /path/to/folder


所有配置 key 都是 snake_case


系列




Relay



以下记录了 Relay 的常规设置:

relay.mode


: String, default: managed, 可能的值: managed, static, proxycapture

控制 Relay 如何获取事件的项目配置。有关这些模式的详细说明,请参阅 Relay模式


relay.upstream

: String, default: https://sentry.io 上游 Relay 或 Sentry 实例的完全限定 URL。

Relay 不会检查循环。不要将此选项设置为会导致事件循环回到此处的端点。


relay.host

: String, default: Docker 中 0.0.0.0, 否则 127.0.0.1

Relay 应该绑定到的主机(网络接口)。示例:0.0.0.0


relay.port

: Integer, default: 3000

未加密的 Relay HTTP server 绑定的端口。示例:3000


relay.tls_port

: Integer, optional

加密 Relay HTTPS server 绑定的可选端口。示例:3001

这是对 port 选项的补充:如果你在 tls_port 上设置了一个 HTTPS 服务器,那么 port 上的 HTTP server 仍然存在。


relay.tls_identity_path

: String, optional

用于 HTTPS server 的身份(DER-encoded PKCS12)的文件系统路径。在当前工作目录中评估相对路径。例如:relay_dev.pfx


relay.tls_identity_password

: String, optional


relay.tls_identity_path 中 PKCS12 存档的密码。


HTTP



这些设置控制与网络相关的配置。

http.timeout


: Integer, default: 5

上游请求的超时时间(以秒为单位)。

此超时涵盖从发送请求到接收响应头的时间。此超时既不包括连接过程和握手,也不包括读取响应正文。


http.connection_timeout

: Integer, default: 3

与上游建立连接的超时时间(以秒为单位)。

这包括 SSL 握手。当上游支持连接保持活动时,Relay 重用连接。连接最多保留 75 秒,不活动保留 15 秒。


http.max_retry_interval

: Integer, default: 60

失败请求重试之间的最大间隔(秒)。


http.host_header

: String, default: null

要发送到上游的自定义 HTTP Host header。


Caching(缓存)



这些设置可以微调项目状态的缓存。


cache.project_expiry

: Integer, default: 300 (5 minutes)

项目配置的缓存超时(以秒为单位)。如果您使用 "simple proxy mode",您的项目配置存储在本地文件中,则无关紧要。


cache.project_grace_period

: Integer, default: 0 (seconds)

在获取新状态时缓存到期后继续使用此项目配置的秒数。这是在 cache.project_expirycache.miss_expiry 之上添加的。


cache.relay_expiry

: Integer, default: 3600 (1 hour)

下游 Relay 信息(公钥)的缓存超时(以秒为单位)。这仅在您计划将更多 Relay 连接到此 Relay 时才相关。


cache.envelope_expiry

: Integer, default: 600 (10 minutes)

在网络问题或积压的情况下,Relay 在其缓存中缓冲传入有效负载的最长时间。这适用于发送到 Relay 的所有类型的数据,包括事件、附件和会话。

另见 cache.envelope_buffer_size


cache.miss_expiry

: Integer, default: 60 (1 minute)

不存在的条目的缓存超时。


cache.batch_interval

: Integer, default: 100 (100 milliseconds)

以毫秒为单位向上游发送批处理查询之前的缓冲区超时。


cache.batch_size

: Integer, default: 500

一次从 Sentry 获取的最大项目配置数。


cache.file_interval

: Integer, default: 10 (10 seconds)

监视本地缓存覆盖文件的时间间隔(以秒为单位)。


cache.envelope_buffer_size

: Integer, default: 1000

在网络问题或积压的情况下缓冲的传入有效负载的最大数量。这适用于发送到 Relay 的所有类型的数据,包括事件、附件和会话。

另见 cache.envelope_expiry


cache.eviction_interval

: Integer, default: 60 (seconds)

从内存中驱逐过时的项目配置的时间间隔。


Size Limits(大小限制)



这些设置控制与 HTTP 相关的限制。所有值要么是整数,要么是人类可读的数字字符串和人类可读的单位,例如:


  • 500B
  • 1kB (1,000 bytes)
  • 1KB or 1KiB (1,024 bytes)
  • 1MB (1,000,000 bytes)
  • 1MiB (1,048,576 bytes)


limits.max_concurrent_requests

: Integer, default: 100

上游的最大并发连接数。如果上游支持,Relay 支持连接保活(keepalive)。


limits.max_concurrent_queries

: Integer, default: 5

在 Relay 开始缓冲请求之前,可以同时从 Relay upstream 发送的最大查询数。查询是为了获取信息而向上游发出的所有请求,并明确地排除事件提交。

查询的并发性还受到 max_concurrent_requests 的限制。


limits.max_event_size

: String, default: 1MiB

事件的最大负载大小。


limits.max_attachment_size

: String, default: 50MiB

每个附件的最大大小。


limits.max_attachments_size

: String, default: 50MiB

信封(envelope)或请求中所有附件的最大组合大小。


limits.max_envelope_size

: String, default: 50MiB

整个信封的最大有效负载大小。个人限制仍然适用。


limits.max_session_count

: Integer, default: 100

每个信封的最大会话项目数。


limits.max_api_payload_size

: String, default: 20MiB

一般 API 请求的最大负载大小。


limits.max_api_file_upload_size

: String, default: 40MiB

文件上传和块(chunks)的最大有效负载大小。


limits.max_api_chunk_upload_size

: String, default: 100MiB

块的最大有效负载大小。


limits.max_thread_count

: Integer, default: number of cpus

为每个 CPU 和 Web Worker 生成的最大线程数。

产生的线程总数大致为 2 * limits.max_thread_count + N,其中 N 是一组固定的管理线程。


limits.query_timeout

: Integer, default: 30 (seconds)

允许查询重试的最大秒数。单个请求的超时时间较短。


limits.max_connection_rate

: Integer, default: 256

一次可以创建的与 Relay 的最大连接数。


limits.max_pending_connections

: Integer, default: 2048

最大挂起连接到 Relay 的数量。这对应于 POSIX 中 listen(2) 的 backlog 参数。


limits.max_connections

: Integer: default: 25_000

Relay 打开的最大传入连接数。


limits.shutdown_timeout

: Integer, default:L 10 (seconds)

接收到关闭信号后等待挂起事件的最大秒数。

Logging(日志记录)



logging.level

: String, default: info

relay 的日志级别。以下之一:

  • off
  • error
  • warn
  • info
  • debug
  • trace

debugtrace 级别,Relay 会发出极其冗长的消息,这可能会对应用程序性能产生严重影响。


logging.log_failed_payloads

: boolean, default: false

将失败事件的完整事件负载记录到日志流中。


logging.format

: String, default: auto

控制日志格式。以下之一:

  • auto: 自动检测(非常适合 TTY,其他则简化)
  • pretty: 带有颜色的人类可读格式
  • simplified: 简化的人类可读日志输出
  • json: JSON 记录,适用于日志软件


logging.enable_backtraces

: boolean, default: true

如果启用,将所有内部错误的跟踪写回日志流并将它们包含在 Sentry 错误中。


StatsD Metrics(统计指标)



metrics.statsd

: String, optional

如果设置为 host/port 字符串,则指标将报告给此 StatsD 实例。


metrics.prefix

: String, default: sentry.relay

应添加到所有指标的前缀。


metrics.default_tags

: Map of strings to strings, default: empty

一组应附加到所有传出 StatsD 指标的默认标签。


metrics.hostname_tag

: String, optional

如果设置,则添加给定名称的标签并将其设置为运行 Relay 的机器的 hostname。此配置对于区分多个 Relay 很有用。


metrics.buffering

: boolean, default: true


在发送到 StatsD server 之前是否会缓冲发出的指标。这通常会提高性能,但需要注意的是,在流量较低的情况下,指标可能需要多几秒钟才能传播。


metrics.sample_rate

: Float, default 1.0

所有发出的指标的全局采样率。应该在 0.01.0 之间。如果超出该范围,该值将被归一化(负值将变为 0.0,大于 1.0 的正值变为 1.0)。例如,0.3 的值意味着只有 30% 的已发出指标将被发送。请注意,实施的采样方法不知道指标类型,例如,当采样率小于 1.0 时,不会重新调整计数器值。


Internal Error Reporting(内部错误报告)



为 Relay 中发生的错误配置错误报告。默认禁用。


sentry.enabled

: boolean, default: false

是否向单独的 DSN 报告内部错误。false 表示不会发送内部错误,但仍会记录。


sentry.dsn

: String, optional

向其报告内部 Relay 故障的 Sentry DSN。

我们建议将其设置为不会向自身发送 Relay 错误的值。理想情况下,这个值应该直接向 Sentry 发送错误,而不是另一个 Relay。

相关文章
|
3月前
|
安全 Nacos 数据库
【技术安全大揭秘】Nacos暴露公网后被非法访问?!6大安全加固秘籍,手把手教你如何保护数据库免遭恶意篡改,打造坚不可摧的微服务注册与配置中心!从限制公网访问到启用访问控制,全方位解析如何构建安全防护体系,让您从此告别数据安全风险!
【8月更文挑战第15天】Nacos是一款广受好评的微服务注册与配置中心,但其公网暴露可能引发数据库被非法访问甚至篡改的安全隐患。本文剖析此问题并提供解决方案,包括限制公网访问、启用HTTPS、加强数据库安全、配置访问控制及监控等,帮助开发者确保服务安全稳定运行。
350 0
|
存储 SQL 分布式计算
数据中台实战(11)-数据中台的数据安全解决方案
数据中台实战(11)-数据中台的数据安全解决方案
416 1
|
存储 Kubernetes Cloud Native
RAID配置:确保数据安全性
RAID配置:确保数据安全性
114 0
|
云安全 监控 安全
配置基线对于数据安全的影响
配置基线对于数据安全的影响
199 0
|
存储 算法 前端开发
面试官:如何保证用户模块的数据安全?说说你的解决方案
面试官:如何保证用户模块的数据安全?说说你的解决方案
210 0
面试官:如何保证用户模块的数据安全?说说你的解决方案
|
存储 安全 应用服务中间件
Sentry 企业级数据安全解决方案 - Relay 操作指南
Sentry 企业级数据安全解决方案 - Relay 操作指南
305 0
|
测试技术 开发者 Python
Sentry 开发者贡献指南 - 配置 PyCharm
Sentry 开发者贡献指南 - 配置 PyCharm
156 0
Sentry 开发者贡献指南 - 配置 PyCharm
|
存储 消息中间件 缓存
Sentry Relay 二次开发调试简介
Sentry Relay 二次开发调试简介
216 0
|
JSON 开发工具 数据安全/隐私保护
Sentry 企业级数据安全解决方案 - Relay PII 和数据清理
Sentry 企业级数据安全解决方案 - Relay PII 和数据清理
216 0
|
6月前
|
存储 数据采集 安全
瓴羊Dataphin数据安全能力再升级,内置分类分级模板、上线隐私计算模块
瓴羊Dataphin数据安全能力再升级,内置分类分级模板、上线隐私计算模块
202 0