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。

Sentry 企业级数据安全解决方案 - Relay 配置选项的更多相关文章

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

    内容整理自官方文档 系列 Sentry 企业级数据安全解决方案 - Relay 入门 Sentry 企业级数据安全解决方案 - Relay 运行模式 Sentry 企业级数据安全解决方案 - Rela ...

  2. Sentry 企业级数据安全解决方案 - Relay 监控 & 指标收集

    内容整理自官方文档 系列 Sentry 企业级数据安全解决方案 - Relay 入门 Sentry 企业级数据安全解决方案 - Relay 运行模式 Sentry 企业级数据安全解决方案 - Rela ...

  3. Sentry 企业级数据安全解决方案 - Relay 操作指南

    内容整理自官方文档 本篇回顾了我们在自托管外部使用 Relay 时的操作指南,即在您的硬件上运行的 Relay 并将事件转发到 sentry.io. 系列 Sentry 企业级数据安全解决方案 - R ...

  4. Sentry 企业级数据安全解决方案 - Relay PII 和数据清理

    本文档描述了一种我们希望最终对用户隐藏的配置格式.该页面仍然存在的唯一原因是当前 Relay 接受这种格式以替代常规数据清理设置. 以下文档探讨了 Relay 使用和执行的高级数据清理配置的语法和语义 ...

  5. Sentry 企业级数据安全解决方案 - Relay 运行模式

    内容整理自官方开发文档 Relay 可以在几种主要模式之一下运行,如果您正在配置 Relay server 而不是使用默认设置,那么事先了解这些模式至关重要. 模式存储在配置文件中,该文件包含 rel ...

  6. Sentry 企业级数据安全解决方案 - Relay 入门

    内容整理自官方开发文档 Sentry Relay 通过提供作为应用程序和 sentry.io 之间中间层的独立服务来提供企业级数据安全性. Relay 专门设计用于: 在将个人身份信息 (PII) 发 ...

  7. (网页)Java日志记录框架Logback配置详解(企业级应用解决方案)(转)

    转自CSDN: 前言 Logback是现在比较流行的一个日志记录框架,它的配置比较简单学习成本相对较低,所以刚刚接触该框架的朋友不要畏惧,多花点耐心很快就能灵活应用了.本篇博文不会具体介绍Logbac ...

  8. 《Hadoop高级编程》之为Hadoop实现构建企业级安全解决方案

    本章内容提要 ●    理解企业级应用的安全顾虑 ●    理解Hadoop尚未为企业级应用提供的安全机制 ●    考察用于构建企业级安全解决方案的方法 第10章讨论了Hadoop安全性以及Hado ...

  9. Foreman 企业级配置管理解决方案

    Foreman 企业级配置管理解决方案 Foreman 企业级配置管理解决方案 笔记本 puppet foreman 构建运维体系 本文是构建运维体系的其中一个关键环节. 什么是 foreman Fo ...

随机推荐

  1. freeswitch APR库线程读写锁

    概述 freeswitch的核心源代码是基于apr库开发的,在不同的系统上有很好的移植性. 线程读写锁在多线程服务中有重要的作用.对于读数据比写数据频繁的服务,用读写锁代替互斥锁可以提高效率. 由于A ...

  2. Linux系统的文件复制移动删除与VIM编辑

    目录 今日内容概要 内容详细 复制文件 移动文件 删除文件 系统别名(针对 rm 改别名) vim编辑器 今日内容概要 复制文件 移动文件 删除文件 vim编辑器 内容详细 复制文件 # 命令: cp ...

  3. 🔥🔥🔥Flutter 字节跳动穿山甲广告插件发布 - FlutterAds

    前言 Flutter 已成为目前最流行的跨平台框架之一,在近期的几个大版本的发布中都提到了 Flutter 版本 Google 广告插件 [google_mobile_ads] .对于"出海 ...

  4. Mysql脚本 生成测试数据

    使用: ./xie.sh -uroot -p'123456' #!/bin/bash #混合测试数据库脚本 #将创建一个single数据库,其中创建一个s1表 #如果数据库存在,将会写入数据,可以在写 ...

  5. Android: Client-Server communication by JSON

    Refer to: http://osamashabrez.com/client-server-communication-android-json/ This is a sequel to my l ...

  6. Jaeger开发入门(java版)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. Mybatis动态SQL语句使用

    在实际开发中,有时候查询条件可能是不确定的,查询条件可能有多条也可能没有,这时候就需要用到动态的sql语句拼接功能. 一.if.where.sql标签的使用 需求:在一些高级查询中,查询条件存在的个数 ...

  8. ReentrantLock可重入锁——源码详解

    开始这篇博客之前,博主默认大家都是看过AQS源码的~什么居然没看过猛戳下方 全网最详细的AbstractQueuedSynchronizer(AQS)源码剖析(一)AQS基础 全网最详细的Abstra ...

  9. MyBatis学习(二)MyBatis-Statement方式的增删改查

    1.前期准备 项目骨架图如下所示 1.配置conf.xml <?xml version="1.0" encoding="UTF-8" ?> < ...

  10. JAVA获取当前年份,月份、日期、小时、分钟、秒等

    import java.util.Calendar; public class Main { public static void main(String[] args) { Calendar cal ...