envoy 中文参考文档
  • 首页
  • 简介
    • Envoy是什么
    • 架构介绍
      • 术语
      • 线程模型
      • 监听器
      • L3/L4网络过滤器
      • HTTP连接管理
      • HTTP过滤器
      • HTTP路由
      • gRPC
      • WebSocket支持
      • 集群管理
      • 服务发现
      • 健康检查
      • 连接池
      • 负载均衡
      • 异常检测
      • 熔断
      • 全局限速
      • TLS
      • 统计
      • 运行时配置
      • 跟踪
      • TCP代理
      • 访问日志
      • MongoDB
      • DynamoDB
      • Redis
      • 热重启
      • 动态配置
      • 初始化
      • 逐出
      • 脚本
    • 部署
    • 业界对比
    • 获得帮助
    • 历史版本
  • 编译安装
    • 编译
    • 参考配置
    • 演示沙箱
      • 前端代理
      • Zipkin跟踪
      • Jaeger跟踪
      • gRPC桥接
      • 构建Envoy Docker镜像
    • 工具
  • 配置参考
    • V1 API 概述
    • V2 API 概述
    • 监听器
    • 网络过滤器
      • TLS客户端身份认证
      • Echo
      • Mongo代理
      • 速率限制
      • Redis代理
      • TCP代理
    • HTTP连接管理器
      • 路由匹配
      • 流量转移/分流
      • HTTP头部操作
      • HTTP头部清理
      • 统计
      • 运行时设置
      • 路由发现服务
    • HTTP过滤器
      • 缓存
      • CORS过滤器
      • 故障注入
      • DynamoDB
      • gRPC HTTP/1.1 桥接
      • gRPC-JSON 转码过滤器
      • gRPC-Web 过滤器
      • 健康检查
      • 速率限制
      • 路由
      • Lua
    • 集群管理
      • 统计
      • 运行时设置
      • 集群发现服务
      • 健康检查
      • 熔断
    • 访问日志
    • 限速服务
    • 运行时配置
    • 路由表检查工具
  • 运维管理
    • 命令行选项
    • 热重启
    • 管理接口
    • 统计概述
    • 运行时配置
    • 文件系统
  • 自定义扩展示例
  • V1 API参考
    • 监听器
    • 网络过滤器
      • TLS客户端身份认证
      • Echo
      • HTTP连接管理
      • Mongo代理
      • 速率限制
      • Redis代理
      • TCP代理
    • HTTP路由配置
      • 虚拟主机
      • 路由
      • 虚拟集群
      • 速率限制配置
      • 路由发现服务
    • HTTP过滤器
      • 缓存
      • CORS过滤器
      • DynamoDB
      • 故障注入
      • gRPC HTTP/1.1 桥接
      • gRPC-JSON 转码过滤器
      • gRPC-Web 过滤器
      • 健康检查
      • Lua
      • 速率限制
      • 路由
    • 集群管理
      • 集群
        • 健康检查
        • 熔断
        • TLS上下文
        • 异常值检测
        • HASH环负载均衡配置
      • 异常检测
      • 集群发现服务
      • 服务发现服务
    • 访问日志
    • 管理接口
    • 限速服务
    • 运行时配置
    • 跟踪
  • V2 API参考
    • 启动引导
    • 监听&监听发现
    • 集群&集群发现
    • 服务发现
    • 健康检查
    • HTTP路由管理&发现
    • TLS配置
    • 通用的类型
    • 网络地址
    • 协议选项
    • 发现API
    • 限速组件
    • 过滤器
      • 网络过滤器
        • TLS客户端身份认证
        • HTTP连接管理
        • Mongo代理
        • 速率限制
        • Redis代理
        • TCP代理
      • HTTP过滤器
        • 缓存
        • 故障注入
        • 健康检查
        • Lua
        • 速率限制
        • 路由
        • gRPC-JSON转码器
      • 常见访问日志类型
      • 常见故障注入类型
  • FAQ
    • Envoy有多快?
    • 我在哪里获得二进制文件?
    • 我如何设置SNI?
    • 如何设置区域感知路由?
    • 我如何设置Zipkin跟踪?
Powered by GitBook
On this page
  • Mongo代理
  • 故障注入
  • 统计
  • 分散GETS
  • 多重GETS
  • 注释解析
  • 按命令统计
  • 查询统计收集
  • 查询的调用点统计收集
  • 运行时
  • 访问日志格式
  • 返回

Was this helpful?

  1. 配置参考
  2. 网络过滤器

Mongo代理

PreviousEchoNext速率限制

Last updated 5 years ago

Was this helpful?

Mongo代理

  • MongoDB

故障注入

Mongo代理过滤器支持故障注入。有关如何配置,请参阅v1和v2 API参考。

统计

每个配置的MongoDB代理过滤器的统计信息都以mongo.<stat_prefix>为根。统计如下:

名称

类型

描述

decoding_error

Counter

MongoDB协议解码错误的数量

delay_injected

Counter

注入被延迟的次数

op_get_more

Counter

OP_GET_MORE消息的数量

op_insert

Counter

OP_INSERT消息的数量

op_kill_cursors

Counter

OP_KILL_CURSORS消息的数量

op_query

Counter

OP_QUERY消息的数量

op_query_tailable_cursor

Counter

具有可设置cursor标示的OP_QUERY的数量

op_query_no_cursor_timeout

Counter

没有设置cursor超时标志的OP_QUERY的数量

op_query_await_data

Counter

具有等待数据标志的OP_QUERY的数量

op_query_exhaust

Counter

设置耗尽标志的OP_QUERY数量

op_query_no_max_time

Counter

没有设置maxTimeMS的查询数量

op_query_scatter_get

Counter

分散查询的数量

op_query_multi_get

Counter

多重查询的次数

op_query_active

Gauge

活跃查询的数量

op_reply

Counter

OP_REPLY消息的数量

op_reply_cursor_not_found

Counter

未找到设置cursor标志的OP_REPLY数量

op_reply_query_failure

Counter

设置了查询失败标志的OP_REPLY数量

op_reply_valid_cursor

Counter

具有有效cursor标志的OP_REPLY数量

cx_destroy_local_with_active_rq

Counter

使用在本地销毁查询连接总数

cx_destroy_remote_with_active_rq

Counter

使用远程销毁查询连接总数

cx_drain_close

Counter

在服务退出时,连接被优雅关闭的总数

分散GETS

Envoy将 scatter get 定义为任何不使用_id字段作为查询参数的查询。同时在文档以及_id的$query字段中查找。

多重GETS

Envoy将 multi get 定义为任何使用_id字段作为查询参数的查询,但其中_id不是标量值(即文档或数组)。同时在文档以及_id的$query字段中查找。

注释解析

如果一个查询的顶层有一个$comment字段(通常添加了一个$query字段),Envoy会将其解析为JSON并查找以下结构:

{
  "callingFunction": "..."
}

callingFunction (required, string) 查询功能。如果可用,该函数将用于调用查询点的统计。

按命令统计

MongoDB过滤器将收集命名空间为mongo.<stat_prefix>.cmd.<cmd>.中命令的统计信息。

名称

类型

描述

total

Counter

命令的数量

reply_num_docs

Histogram

应答中的文件数量

reply_size

Histogram

应答的字节数(单位bytes)

reply_time_ms

Histogram

命令的时间(单位毫秒)

查询统计收集

MongoDB过滤器将收集mongo中查询的统计信息,命名空间mongo.<stat_prefix>.collection.<collection>.query.。

名称

类型

描述

total

Counter

查询数量

scatter_get

Counter

分散查询的数量

multi_get

Counter

多重查询的数量

reply_num_docs

Histogram

应答文件的数量

reply_size

Histogram

应答大小(单位:字节)

reply_time_ms

Histogram

查询时间(单位:毫秒)

查询的调用点统计收集

如果应用程序在$comment字段中提供调用函数,Envoy将生成每个调用点统计信息。 这些统计信息匹配每个查询信息,匹配的命名空间为 mongo.<stat_prefix>.collection.<collection>.callsite.<callsite>.query.。

运行时

Mongo代理过滤器支持以下运行配置:

mongo.connection_logging_enabled

  • 将启用日志记录连接的百分比。默认为100。若允许有百分之百连接的日志记录,但这些连接上的所有消息都将被记录。

mongo.proxy_enabled

  • 将会启用代理连接的百分比。默认为100。

mongo.logging_enabled

  • 将被记录的消息的百分比。默认为100,如果小于100,没有查询回复可能会被记录等。

mongo.mongo.drain_close_enabled

  • 如果服务器逐出关闭,将会关闭的连接百分比,否则将尝试强制关闭。默认为100。

mongo.fault.fixed_delay.percent

  • 当没有活跃的故障时,正常的MongoDB操作,受到注入故障影响的概率。默认为percent配置。

mongo.fault.fixed_delay.duration_ms

  • 延迟时间以毫秒为单位。默认在使用duration_ms配置。

访问日志格式

访问日志格式不可定制,并具有以下布局:

{"time": "...", "message": "...", "upstream_host": "..."}

time

  • 完整的消息被解析的系统时间,包括毫秒。

message

  • 消息的文本扩展。消息是否完全展开取决于上下文。有时会提供汇总数据,以避免超大日志。

upstream_host

返回

代理连接的上游主机。如果与一起使用,则会填充此项。

体系结构概述
v1 API 参考
v2 API 参考
TCP代理过滤器
上一级
首页目录