Apache Tomcat 集成

编辑

Apache Tomcat 集成

编辑

版本

1.8.1 (查看全部)

兼容的 Kibana 版本

8.13.0 或更高版本

支持的无服务器项目类型
这是什么?

安全性
可观测性

订阅级别
这是什么?

基本

支持级别
这是什么?

Elastic

概述

编辑

Apache Tomcat 是 Jakarta Servlet、Jakarta 表达式语言和 WebSocket 技术的免费开源实现。它提供了一个纯 Java HTTP Web 服务器环境,Java 代码也可以在其中运行。因此,它是一个 Java Web 应用服务器,尽管不是一个完整的 JEE 应用服务器。

使用 Apache Tomcat 集成来

  • 收集与缓存、连接池、内存、请求、会话和线程池相关的指标,并收集与访问、Catalina 和 localhost 相关的日志。
  • 创建可视化来监控、衡量和分析使用趋势和关键数据,并获得商业见解。
  • 创建警报,通过在排除问题时参考相关日志来减少 MTTD 和 MTTR。

数据流

编辑

Apache Tomcat 集成收集日志和指标数据。

日志帮助您记录机器上发生的事件。Log Apache Tomcat 集成收集的数据流是 accesscatalinalocalhost,以便用户可以跟踪客户端的 IP 地址、返回给客户端或由客户端发送的字节等,从而用户可以监控和排除 Java 应用程序的性能故障。

指标让您可以深入了解 Apache Tomcat 的统计信息。Apache Tomcat 集成收集的 Metric 数据流是 cacheconnection poolmemoryrequestsessionthread pool,以便用户可以监控和排除 Apache Tomcat 实例的性能故障。

数据流

  • access:收集与 HTTP 事务、客户端 IP、响应代码和请求处理时间相关的信息。
  • cache:收集与 Apache Tomcat 实例的整体缓存相关的信息。
  • catalina:收集与 Apache Tomcat 应用服务器的启动和关闭、新应用程序的部署或一个或多个子系统的故障相关的信息。
  • connection pool:收集与连接池相关的信息,例如活动和空闲连接数。
  • localhost:收集与 Web 应用程序活动相关的信息,该活动与应用程序服务器和客户端之间的 HTTP 事务相关。
  • memory:收集与 Tomcat 实例的堆内存、非堆内存和垃圾回收相关的信息。
  • request:收集与 Apache Tomcat 实例的请求相关的信息。
  • thread pool:收集与 Tomcat 实例中线程的整体状态、CPU 时间和处理终止时间相关的信息。
  • session:收集与 Tomcat 实例的整体创建、活动和过期会话相关的信息。

注意

  • 用户可以在 Discoverlogs-* 索引模式下的 Apache Tomcat 的已摄取文档中监控和查看日志,对于指标,索引模式为 metrics-*

兼容性

编辑

此集成已针对 Apache Tomcat 版本 10.1.59.0.718.5.85 以及 Prometheus 版本 0.20.0 进行了测试。

先决条件

编辑

您需要 Elasticsearch 来存储和搜索您的数据,以及 Kibana 来可视化和管理数据。您可以使用我们在 Elastic Cloud 上托管的 Elasticsearch 服务(推荐)或自行管理您自己的硬件上的 Elastic Stack。

为了从 Apache Tomcat 中摄取数据,用户必须具有

  • 在 Apache Tomcat 实例中配置 Prometheus

设置

编辑

有关如何设置集成的分步说明,请参阅入门指南。

设置 Prometheus 的步骤

编辑

以下是在 Apache Tomcat 实例中配置 Prometheus 的步骤

  1. 从 Apache Tomcat 实例转到 <TOMCAT_HOME>/webapps
  2. 请查找最新的Prometheus 版本,在以下命令中替换并从 Apache Tomcat 实例执行:-
wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/<prometheus_version>/jmx_prometheus_javaagent-<prometheus_version>.jar
  1. <TOMCAT_HOME>/webapps 中创建 config.yml 文件,并将以下内容粘贴到 config.yml 文件中:-
rules:
- pattern: ".*"
  1. 转到 /etc/systemd/system 并在 tomcat.service 文件的 [Service] 部分中添加以下内容:-
Environment='JAVA_OPTS=-javaagent:<TOMCAT_HOME>/webapps/jmx_prometheus_javaagent-<prometheus_version>.jar=<prometheus_port>:/opt/tomcat/webapps/config.yml'
  1. 运行以下命令以重新加载 systemd 管理器配置并重新启动 Apache Tomcat 服务以设置更新的环境变量:-
systemctl daemon-reload
systemctl restart tomcat

配置访问日志的 Filestream 输入的步骤

编辑

以下是在 Apache Tomcat 实例中配置日志格式的步骤

  1. 从 Apache Tomcat 实例转到 <TOMCAT_HOME>/conf/server.xml
  2. 用户可以在类 org.apache.catalina.valves.AccessLogValve 的 pattern 字段中更新日志格式。以下是 org.apache.catalina.valves.AccessLogValve 类的示例。
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
       prefix="localhost_access_log" suffix=".txt"
       pattern='%h %l %u %t "%r" %s %b %A %X %T "%{Referer}i" "%{User-Agent}i" X-Forwarded-For="%{X-Forwarded-For}i"' />
  1. 支持的日志格式为
Common Log Format :- '%h %l %u %t "%r" %s %b'
Combined Log Format :- '%h %l %u %t "%r" %s %b "%{Referrer}i" "%{User-Agent}i"'
Combined Log Format + X-Forwarded-For header :- '%h %l %u %t "%r" %s %b %A %X %T "%{Referer}i" "%{User-Agent}i" X-Forwarded-For="%{X-Forwarded-For}i"'
  1. 运行以下命令以重新启动 Apache Tomcat 实例:-
systemctl restart tomcat

Catalina 和 Localhost 日志支持的日志格式

编辑
  • 带有错误堆栈跟踪
dd-MMM-yyyy HH:mm:ss.SSS [Severity] [Subsystem] [Message Text] [Error Stack Trace]
  • 不带有错误堆栈跟踪
dd-MMM-yyyy HH:mm:ss.SSS [Severity] [Subsystem] [Message Text]

注意

  • 重新启动 Apache Tomcat 不会影响当前正在运行的虚拟桌面。它只会阻止新用户在重新启动过程中(通常几秒钟)登录。
  • 用户可以通过编写自己的自定义摄取管道来支持新的日志格式。为了方便 Catalina 和 localhost 日志的多行解析,可以使用多行配置来匹配日志的多行模式。

配置

编辑

您需要来自您的 Apache Tomcat 实例 的以下信息,才能在 Elastic 中配置此集成

Apache Tomcat 主机名
编辑

主机配置格式:http[s]://<主机名>:<端口>/<指标路径>

主机配置示例:https://127.0.0.1:9090/metrics

验证

编辑

成功配置集成后,单击 Apache Tomcat 集成的“资产”选项卡应显示可用仪表板的列表。单击为您的配置数据流提供的仪表板。它应填充所需的数据。

故障排除

编辑
  • apache_tomcat.access.header_forwarder 在此集成的 0.16.1 版本中重命名为 client.ip。因此,请考虑将使用 apache_tomcat.access.header_forwarder 的位置更改为 client.ip 字段。通过使用 Update By Query API,可以将所有文档的 apache_tomcat.access.header_forwarder 重命名为 client.ip 字段,这将有助于适应此更改。
  • 如果用户在数据摄取时遇到以下错误,这是因为 Prometheus 端点的速率限制。这里不会有任何数据丢失,但如果用户仍然想避免这种情况,请确保配置的 Prometheus 端点不会从多个地方访问。
{
  "error": {
    "message": "unable to decode response from prometheus endpoint: error making http request: Get \"http://127.0.0.1/metrics\": dial tcp 127.0.0.1: connect: connection refused"
  }
}
  • 如果事件以不正确的时间戳摄取,请在“添加 Apache Tomcat”页面上验证 Catalina 和 Localhost 日志数据流的时区设置。

日志参考

编辑
访问
编辑

这是 Access 数据流。此数据流收集与 HTTP 事务、客户端 IP、响应代码和请求处理时间相关的日志。

示例

一个 access 的示例事件如下

{
    "@timestamp": "2023-09-27T19:06:51.000Z",
    "agent": {
        "ephemeral_id": "660e6653-ce16-42eb-8e2e-9952cf9745d2",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "filebeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "access": {
            "http": {
                "ident": "-",
                "useragent": "-"
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.access",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 11235
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.access",
        "ingested": "2023-09-27T19:07:26Z",
        "kind": "event",
        "module": "apache_tomcat",
        "original": "127.0.0.1 - - [27/Sep/2023:19:06:51 +0000] \"GET / HTTP/1.1\" 200 11235",
        "outcome": "success",
        "type": [
            "access"
        ]
    },
    "http": {
        "request": {
            "method": "GET"
        },
        "response": {
            "status_code": 200
        },
        "version": "1.1"
    },
    "input": {
        "type": "filestream"
    },
    "log": {
        "file": {
            "device_id": 141,
            "inode": 18615366,
            "path": "/tmp/service_logs/localhost_access_log.2023-09-27.txt"
        },
        "offset": 0
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "source": {
        "ip": "127.0.0.1"
    },
    "tags": [
        "preserve_original_event",
        "forwarded",
        "apache_tomcat-access"
    ],
    "url": {
        "original": "/",
        "path": "/"
    }
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位

@timestamp

事件时间戳。

date

apache_tomcat.access.connection_status

完成响应时的连接状态。

keyword

apache_tomcat.access.http.ident

来自 identd 的远程逻辑用户名。

keyword

apache_tomcat.access.http.useragent

请求页面的已验证用户的用户 ID(如果使用 HTTP 验证)。

keyword

apache_tomcat.access.ip.local

本地 IP 地址。

ip

apache_tomcat.access.response_time

端点的响应时间。

double

s

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

input.type

Filebeat 输入的类型。

keyword

log.file.device_id

包含文件所在文件系统的设备的 ID。

keyword

log.file.fingerprint

启用指纹识别时,文件的 SHA256 指纹标识。

keyword

log.file.idxhi

与文件关联的唯一标识符的高位部分。(仅限 Windows)

keyword

log.file.idxlo

与文件关联的唯一标识符的低位部分。(仅限 Windows)

keyword

log.file.inode

日志文件的 inode 号。

keyword

log.file.vol

包含文件的卷的序列号。(仅限 Windows)

keyword

log.offset

日志偏移量。

long

Catalina
编辑

这是 Catalina 数据流。此数据流收集与 Apache Tomcat 应用程序服务器的启动和关闭、新应用程序的部署或一个或多个子系统失败相关的日志。

示例

一个 catalina 的示例事件如下所示

{
    "@timestamp": "2023-09-27T19:09:05.176Z",
    "agent": {
        "ephemeral_id": "077f3cfd-ea7d-49bc-a421-d85ae64524a4",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "filebeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "catalina": {
            "subsystem": "main"
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.catalina",
        "namespace": "ep",
        "type": "logs"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.catalina",
        "ingested": "2023-09-27T19:10:10Z",
        "kind": "event",
        "module": "apache_tomcat",
        "original": "27-Sep-2023 19:09:05.176 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/10.1.5",
        "timezone": "UTC",
        "type": [
            "info"
        ]
    },
    "input": {
        "type": "filestream"
    },
    "log": {
        "file": {
            "device_id": 141,
            "inode": 18617251,
            "path": "/tmp/service_logs/catalina.2023-09-27.log"
        },
        "level": "info",
        "offset": 0
    },
    "message": "org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/10.1.5",
    "tags": [
        "preserve_original_event",
        "forwarded",
        "apache_tomcat-catalina"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

apache_tomcat.catalina.subsystem

指示 Apache Tomcat 的子系统或消息来源的模块类型。例如,RBPM 或 Java 消息服务 (JMS)。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

input.type

Filebeat 输入的类型。

keyword

log.file.device_id

包含文件所在文件系统的设备的 ID。

keyword

log.file.fingerprint

启用指纹识别时,文件的 SHA256 指纹标识。

keyword

log.file.idxhi

与文件关联的唯一标识符的高位部分。(仅限 Windows)

keyword

log.file.idxlo

与文件关联的唯一标识符的低位部分。(仅限 Windows)

keyword

log.file.inode

日志文件的 inode 号。

keyword

log.file.vol

包含文件的卷的序列号。(仅限 Windows)

keyword

log.offset

日志偏移量。

long

Localhost
编辑

这是 Localhost 数据流。此数据流收集与 Web 应用程序活动相关的日志,这些活动与应用程序服务器和客户端之间的 HTTP 事务相关。

示例

一个 localhost 的示例事件如下所示

{
    "@timestamp": "2023-02-23T15:40:03.711Z",
    "agent": {
        "ephemeral_id": "98a908e5-d419-4da8-8985-4d1417e50646",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "filebeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "localhost": {
            "subsystem": "localhost-startStop-1"
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.localhost",
        "namespace": "ep",
        "type": "logs"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.localhost",
        "ingested": "2023-09-27T19:12:55Z",
        "kind": "event",
        "module": "apache_tomcat",
        "original": "23-Feb-2023 15:40:03.711 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()",
        "timezone": "UTC",
        "type": [
            "info"
        ]
    },
    "input": {
        "type": "filestream"
    },
    "log": {
        "file": {
            "device_id": 141,
            "inode": 18619079,
            "path": "/tmp/service_logs/localhost.log"
        },
        "level": "info",
        "offset": 0
    },
    "message": "org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()",
    "tags": [
        "preserve_original_event",
        "forwarded",
        "apache_tomcat-localhost"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

apache_tomcat.localhost.subsystem

指示 Apache Tomcat 的子系统或消息来源的模块类型。例如,RBPM 或 Java 消息服务 (JMS)。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

input.type

Filebeat 输入的类型。

keyword

log.file.device_id

包含文件所在文件系统的设备的 ID。

keyword

log.file.fingerprint

启用指纹识别时,文件的 SHA256 指纹标识。

keyword

log.file.idxhi

与文件关联的唯一标识符的高位部分。(仅限 Windows)

keyword

log.file.idxlo

与文件关联的唯一标识符的低位部分。(仅限 Windows)

keyword

log.file.inode

日志文件的 inode 号。

keyword

log.file.vol

包含文件的卷的序列号。(仅限 Windows)

keyword

log.offset

日志偏移量。

long

指标参考

编辑
缓存
编辑

这是 Cache 数据流。此数据流收集与缓存大小和缓存条目的生存时间相关的指标。

示例

一个 cache 的示例事件如下所示

{
    "@timestamp": "2023-07-06T06:19:25.324Z",
    "agent": {
        "ephemeral_id": "dd4ae675-0ef8-49ba-9568-d7f989add4dd",
        "id": "c78eadae-edd0-4b88-ab24-f2fb84a98229",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.8.0"
    },
    "apache_tomcat": {
        "cache": {
            "application_name": "/",
            "hit": {
                "count": 22
            },
            "lookup": {
                "count": 37
            },
            "object": {
                "size": {
                    "max": {
                        "kb": 512
                    }
                }
            },
            "size": {
                "current": {
                    "kb": 19
                },
                "max": {
                    "kb": 10240
                }
            },
            "ttl": {
                "ms": 5000
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.cache",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "c78eadae-edd0-4b88-ab24-f2fb84a98229",
        "snapshot": false,
        "version": "8.8.0"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.cache",
        "duration": 253547035,
        "ingested": "2023-07-06T06:19:29Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "e8978f2086c14e13b7a0af9ed0011d19",
        "ip": [
            "172.27.0.7"
        ],
        "mac": [
            "02-42-AC-1B-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "3.10.0-1160.90.1.el7.x86_64",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-cache"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.cache.application_name

Apache Tomcat 应用程序的名称。

keyword

apache_tomcat.cache.hit.count

从缓存中提供的资源请求数。

double

gauge

apache_tomcat.cache.lookup.count

资源请求数。

double

gauge

apache_tomcat.cache.object.size.max.kb

缓存中单个对象允许的最大大小,以 kB 为单位。

double

gauge

apache_tomcat.cache.size.current.kb

当前缓存大小的估计值,以 kB 为单位。

double

gauge

apache_tomcat.cache.size.max.kb

允许的最大缓存大小,以 kB 为单位。

double

gauge

apache_tomcat.cache.ttl.ms

缓存条目的生存时间,以毫秒为单位。

double

ms

gauge

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

连接池
编辑

这是 connection pool 数据流。此数据流收集与连接池相关的指标,例如活动连接和空闲连接的数量。

示例

一个 connection_pool 的示例事件如下所示

{
    "@timestamp": "2023-09-27T19:11:29.922Z",
    "agent": {
        "ephemeral_id": "8dcc13af-7670-441d-b51b-826f604c433b",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "connection_pool": {
            "access_to_underlying_connection_allowed": false,
            "application_name": "/",
            "cache": {
                "state": 1
            },
            "connection": {
                "abandoned_usage_tracking": false,
                "active": {
                    "count": 0
                },
                "autocommit_on_return": true,
                "clear_statement_pool_on_return": false,
                "closed": false,
                "database": {
                    "time": {
                        "max": {
                            "ms": -1
                        }
                    }
                },
                "default_transaction_isolation": -1,
                "enable_autocommit_on_return": true,
                "fast_fail_validation": false,
                "idle": {
                    "count": 0,
                    "exists": false,
                    "max": {
                        "count": 20,
                        "size": -1,
                        "time": {
                            "ms": 3
                        }
                    },
                    "min": {
                        "size": 5,
                        "time": {
                            "ms": -1
                        }
                    }
                },
                "initial_size": {
                    "count": 0
                },
                "lifetime": {
                    "max": {
                        "ms": -1
                    }
                },
                "log_expired": true,
                "min_evictable_idle": {
                    "time": 1800000
                },
                "remove_abandoned_on_borrow": false,
                "remove_abandoned_on_maintenance": false,
                "remove_abandoned_timeout": 300,
                "rollback_on_return": true,
                "test_on_return": false,
                "test_while_idle": false,
                "time_betwen_eviction_run": {
                    "time": {
                        "ms": -1
                    }
                },
                "validate": -1
            },
            "lifo": true,
            "max": {
                "total": 8
            },
            "prepared_statements": false,
            "test_on_borrow": true,
            "test_on_create": false
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.connection_pool",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.connection_pool",
        "duration": 198881542,
        "ingested": "2023-09-27T19:11:32Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "ddbe644fa129402e9d5cf6452db1422d",
        "ip": [
            "172.31.0.7"
        ],
        "mac": [
            "02-42-AC-1F-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-connection_pool"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.connection_pool.access_to_underlying_connection_allowed

返回连接池启动时将建立的连接的状态。

boolean

apache_tomcat.connection_pool.application_name

Apache Tomcat 应用程序的名称。

keyword

apache_tomcat.connection_pool.cache.state

连接池的缓存状态。

double

gauge

apache_tomcat.connection_pool.connection.abandoned_usage_tracking

指示当 logAbandoned 为 true 时是否需要完整的堆栈跟踪。

boolean

apache_tomcat.connection_pool.connection.active.count

池中活动连接的数量。

double

gauge

apache_tomcat.connection_pool.connection.autocommit_on_return

正在返回到池的连接。

boolean

apache_tomcat.connection_pool.connection.clear_statement_pool_on_return

跟踪与连接关联的语句。

boolean

apache_tomcat.connection_pool.connection.closed

随机连接关闭异常。

boolean

apache_tomcat.connection_pool.connection.database.time.max.ms

等待数据库连接变为可用的最长时间,以毫秒为单位。

double

ms

gauge

apache_tomcat.connection_pool.connection.default_transaction_isolation

此池创建的连接的 TransactionIsolation 状态

double

gauge

apache_tomcat.connection_pool.connection.enable_autocommit_on_return

将检查返回到池的连接并使用连接进行配置。

boolean

apache_tomcat.connection_pool.connection.fast_fail_validation

连接验证查询失败前的超时时间。

boolean

apache_tomcat.connection_pool.connection.idle.count

连接池的空闲连接数。

double

gauge

apache_tomcat.connection_pool.connection.idle.exists

logAbandoned 以确定连接是否空闲。

boolean

apache_tomcat.connection_pool.connection.idle.max.count

最大空闲连接数。

double

gauge

apache_tomcat.connection_pool.connection.idle.max.size

返回池中可以保持空闲的最大连接数。

double

gauge

apache_tomcat.connection_pool.connection.idle.max.time.ms

它表示在每次运行空闲对象驱逐线程期间,池将检查的最大对象数。

double

ms

gauge

apache_tomcat.connection_pool.connection.idle.min.size

应始终保持在池中的最小已建立连接数。

double

gauge

apache_tomcat.connection_pool.connection.idle.min.time.ms

Tomcat DataSource 对象的一个属性,它设置一个对象在池中处于空闲状态的最短时间,之后该对象才有资格被空闲对象驱逐器驱逐。

double

ms

gauge

apache_tomcat.connection_pool.connection.initial_size.count

池启动时创建的初始连接数。

double

gauge

apache_tomcat.connection_pool.connection.lifetime.max.ms

连接的最大生存时间,以毫秒为单位。

double

ms

gauge

apache_tomcat.connection_pool.connection.log_expired

记录池中已过期的连接。

boolean

apache_tomcat.connection_pool.connection.min_evictable_idle.time

一个对象在池中处于空闲状态的最短时间,之后该对象才有资格被驱逐。

double

gauge

apache_tomcat.connection_pool.connection.remove_abandoned_on_borrow

在借用连接时从池中删除放弃的连接。

boolean

apache_tomcat.connection_pool.connection.remove_abandoned_on_maintenance

不接受与 Tomcat JDBC 连接池参数不同的 commons dbcp 参数。

boolean

apache_tomcat.connection_pool.connection.remove_abandoned_timeout

在放弃(使用中)连接可以被删除之前,以秒为单位的超时时间。

double

gauge

apache_tomcat.connection_pool.connection.rollback_on_return

池可以通过调用连接上的回滚来终止事务。

boolean

apache_tomcat.connection_pool.connection.test_on_return

是否在将对象返回到池之前验证对象的指示。

boolean

apache_tomcat.connection_pool.connection.test_while_idle

自省属性 testWhileIdle。

boolean

apache_tomcat.connection_pool.connection.time_betwen_eviction_run.time.ms

空闲连接验证/清除线程的每次运行之间休眠的总时间,以毫秒为单位。

double

ms

gauge

apache_tomcat.connection_pool.connection.validate

验证来自此池的连接。

double

gauge

apache_tomcat.connection_pool.lifo

后进先出连接。

boolean

apache_tomcat.connection_pool.max.total

连接池的最大总数。

double

gauge

apache_tomcat.connection_pool.prepared_statements

验证来自此池的连接。

boolean

apache_tomcat.connection_pool.test_on_borrow

是否在从池中借用对象之前验证对象的指示。

boolean

apache_tomcat.connection_pool.test_on_create

属性确定池是否会在池创建对象后立即验证对象。

boolean

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

内存
编辑

这是 memory 数据流。此数据流收集与堆内存、非堆内存、垃圾回收时间和计数相关的指标。

示例

一个 memory 的示例事件如下所示

{
    "@timestamp": "2023-09-27T19:14:11.339Z",
    "agent": {
        "ephemeral_id": "e71c07db-c98b-4ee5-929a-959290720d1b",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "memory": {
            "doc_type": "gc",
            "gc": {
                "collection": {
                    "count": 0,
                    "time": {
                        "ms": 0
                    }
                },
                "valid": 1
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.memory",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.memory",
        "duration": 173318458,
        "ingested": "2023-09-27T19:14:14Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "ddbe644fa129402e9d5cf6452db1422d",
        "ip": [
            "172.31.0.7"
        ],
        "mac": [
            "02-42-AC-1F-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-memory"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.memory.doc_type

事件的文档类型。这应该是“memory”或“gc”。

keyword

apache_tomcat.memory.gc.collection.count

自服务器启动以来,调用的垃圾回收的累计次数。

long

counter

apache_tomcat.memory.gc.collection.time.ms

在收集间隔期间,垃圾回收所花费的时间(以毫秒为单位)。

long

ms

gauge

apache_tomcat.memory.gc.valid

即使旧 GC JMX 计数器保持为 0,而旧空间由年轻的集合逐渐回收,G1 中的垃圾回收过程也被认为是有效的。

long

gauge

apache_tomcat.memory.heap.committed.bytes

已提交的堆内存使用量。

double

byte

gauge

apache_tomcat.memory.heap.init.bytes

初始堆内存使用量。

double

byte

gauge

apache_tomcat.memory.heap.max.bytes

最大堆内存使用量。当堆内存配置的最大内存大小(以字节为单位)的值设置为 -1 时,表示用户尚未为内存分配指定预定义的大小。

double

byte

gauge

apache_tomcat.memory.heap.used.bytes

已使用的堆内存使用量。

double

byte

gauge

apache_tomcat.memory.non_heap.committed.bytes

已提交的非堆内存使用量。

double

byte

gauge

apache_tomcat.memory.non_heap.init.bytes

初始非堆内存使用量。

double

byte

gauge

apache_tomcat.memory.non_heap.max.bytes

最大非堆内存使用量。当非堆内存配置的最大内存大小(以字节为单位)的值设置为 -1 时,表示用户尚未为内存分配指定预定义的大小。

double

byte

gauge

apache_tomcat.memory.non_heap.used.bytes

已使用的非堆内存使用量。

double

byte

gauge

apache_tomcat.memory.object_pending_finalization.count

等待最终确定的对象计数。

double

gauge

apache_tomcat.memory.verbose

设置为 true 时,将导致内存管理器在执行某些与内存相关的操作时向控制台打印消息。(1.0-true, 0.0-false)。

boolean

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

请求
编辑

这是 Request 数据流。此数据流收集与请求计数以及接收和发送的数据量相关的指标。

示例

一个 request 的示例事件如下所示

{
    "@timestamp": "2023-07-06T06:18:00.930Z",
    "agent": {
        "ephemeral_id": "e291bf4e-e4fc-42c4-bb98-8acddc2e7af1",
        "id": "c78eadae-edd0-4b88-ab24-f2fb84a98229",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.8.0"
    },
    "apache_tomcat": {
        "request": {
            "count": 2,
            "error": {
                "count": 0
            },
            "nio_connector": "http-nio-8080",
            "received": {
                "bytes": 0
            },
            "sent": {
                "bytes": 22430
            },
            "time": {
                "max": 942,
                "total": 942
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.request",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "c78eadae-edd0-4b88-ab24-f2fb84a98229",
        "snapshot": false,
        "version": "8.8.0"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.request",
        "duration": 266759936,
        "ingested": "2023-07-06T06:18:04Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "e8978f2086c14e13b7a0af9ed0011d19",
        "ip": [
            "172.27.0.7"
        ],
        "mac": [
            "02-42-AC-1B-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "3.10.0-1160.90.1.el7.x86_64",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-request"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.request.count

处理的请求数。

double

counter

apache_tomcat.request.error.count

错误数。

double

gauge

apache_tomcat.request.nio_connector

NIO 连接器的名称。

keyword

apache_tomcat.request.received.bytes

接收到的数据量,以字节为单位。

double

byte

counter

apache_tomcat.request.sent.bytes

发送的数据量,以字节为单位。

double

byte

counter

apache_tomcat.request.time.max

处理请求的最大时间 (毫秒)。

double

ms

counter

apache_tomcat.request.time.total

处理请求的总时间 (毫秒)。

double

ms

counter

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

会话
编辑

这是 session 数据流。此数据流收集与创建、活动、过期和拒绝的会话、会话的存活时间和处理时间相关的指标。

示例

session 的示例事件如下所示

{
    "@timestamp": "2023-09-27T19:16:54.670Z",
    "agent": {
        "ephemeral_id": "e227fa37-0bd2-4d8f-9397-d2ebf1247710",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "session": {
            "active": {
                "allowed": {
                    "max": -1
                },
                "max": 0,
                "total": 0
            },
            "alive_time": {
                "avg": 0,
                "max": 0
            },
            "application_name": "/",
            "create": {
                "rate": 0,
                "total": 0
            },
            "duplicate_ids": {
                "count": 0
            },
            "expire": {
                "rate": 0,
                "total": 0
            },
            "persist_authentication": false,
            "process_expires_frequency": {
                "count": 6
            },
            "processing_time": 0,
            "rejected": {
                "count": 0
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.session",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.session",
        "duration": 146910709,
        "ingested": "2023-09-27T19:16:57Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "ddbe644fa129402e9d5cf6452db1422d",
        "ip": [
            "172.31.0.7"
        ],
        "mac": [
            "02-42-AC-1F-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-session"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.session.active.allowed.max

允许的最大活动会话数,如果无限制则为 -1。

double

gauge

apache_tomcat.session.active.max

到目前为止的最大活动会话数。

double

counter

apache_tomcat.session.active.total

当前时刻的活动会话数。

double

gauge

apache_tomcat.session.alive_time.avg

过期会话的平均存活时间。

double

gauge

apache_tomcat.session.alive_time.max

过期会话的最长存活时间。

double

counter

apache_tomcat.session.application_name

Apache Tomcat 应用程序的名称。

keyword

apache_tomcat.session.create.rate

每分钟的会话创建速率,以会话数/分钟为单位。

double

gauge

apache_tomcat.session.create.total

管理器创建的会话总数。

double

counter

apache_tomcat.session.duplicate_ids.count

生成的重复会话 ID 数。

double

gauge

apache_tomcat.session.expire.rate

每分钟的会话过期速率,以会话数/分钟为单位。

double

gauge

apache_tomcat.session.expire.total

过期的会话数(不包括显式失效)。

double

gauge

apache_tomcat.session.persist_authentication

指示在持久化时(例如,跨应用程序重启时)会话是否应保留身份验证信息。

boolean

apache_tomcat.session.process_expires_frequency.count

管理器检查(过期和钝化)的频率。

double

gauge

apache_tomcat.session.processing_time

花费在执行内务管理和过期操作的时间。

double

ms

gauge

apache_tomcat.session.rejected.count

由于达到 maxActive 而被拒绝的会话数。

double

gauge

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

线程池
编辑

这是 thread pool 数据流。此数据流收集与线程的总数、活动数、当前数、守护线程数、忙线程数和峰值线程数、CPU 时间和线程处理终止时间相关的指标。

示例

thread_pool 的示例事件如下所示

{
    "@timestamp": "2023-09-27T19:18:14.080Z",
    "agent": {
        "ephemeral_id": "9e30f9c3-c9e5-4366-b899-29ee8f99bd67",
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "name": "docker-fleet-agent",
        "type": "metricbeat",
        "version": "8.10.1"
    },
    "apache_tomcat": {
        "thread_pool": {
            "contention": {
                "monitoring_enabled": false
            },
            "thread": {
                "active": {
                    "count": 26
                },
                "allocated_memory": {
                    "enabled": true,
                    "supported": true
                },
                "current": {
                    "allocated": {
                        "bytes": 3155872
                    },
                    "cpu": {
                        "time": {
                            "enabled": true,
                            "ms": 34786168
                        }
                    },
                    "user": {
                        "time": {
                            "ms": 30000000
                        }
                    }
                },
                "daemon": {
                    "count": 23
                },
                "peak": {
                    "count": 26
                },
                "supported": {
                    "contention_monitoring": true,
                    "cpu": {
                        "current": {
                            "time": true
                        }
                    },
                    "usage": {
                        "object_monitor": true,
                        "synchronizer": true
                    }
                },
                "total": 27
            }
        }
    },
    "data_stream": {
        "dataset": "apache_tomcat.thread_pool",
        "namespace": "ep",
        "type": "metrics"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "86a82f91-ff66-4d28-ab7c-eb9350f317ed",
        "snapshot": false,
        "version": "8.10.1"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "web"
        ],
        "dataset": "apache_tomcat.thread_pool",
        "duration": 167367708,
        "ingested": "2023-09-27T19:18:17Z",
        "kind": "metric",
        "module": "apache_tomcat",
        "type": [
            "info"
        ]
    },
    "host": {
        "architecture": "aarch64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "ddbe644fa129402e9d5cf6452db1422d",
        "ip": [
            "172.31.0.7"
        ],
        "mac": [
            "02-42-AC-1F-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.6 LTS (Focal Fossa)"
        }
    },
    "metricset": {
        "name": "collector",
        "period": 10000
    },
    "service": {
        "address": "http://elastic-package-service-apache_tomcat-1:9090/metrics",
        "type": "prometheus"
    },
    "tags": [
        "apache_tomcat-thread_pool"
    ]
}

ECS 字段参考

有关 ECS 字段的详细信息,请参阅以下文档

导出的字段
字段 描述 类型 单位 指标类型

@timestamp

事件时间戳。

date

agent.id

此代理的唯一标识符(如果存在)。示例:对于 Beats,这将是 beat.id。

keyword

apache_tomcat.thread_pool.connection.count

所有连接的计数。

double

counter

apache_tomcat.thread_pool.connection.linger

此连接器使用的套接字在关闭时将保持的时间(秒)。

double

s

gauge

apache_tomcat.thread_pool.connection.max

服务器将接受和处理的最大并发连接总数。

double

gauge

apache_tomcat.thread_pool.connection.timeout

线程连接超时。

double

counter

apache_tomcat.thread_pool.contention.monitoring_enabled

这用于确定 Java 虚拟机是否启用线程争用监视。

boolean

apache_tomcat.thread_pool.executor_termination.timeout.ms

在继续停止连接器的过程之前,私有内部执行器将等待请求处理线程终止的时间。如果未设置,则默认值为 5000(5 秒)。

double

ms

gauge

apache_tomcat.thread_pool.initiated_connector.state

启动连接器时绑定的状态。

boolean

apache_tomcat.thread_pool.keep_alive.count

ThreadPool 上的总保持活动连接数。

double

gauge

apache_tomcat.thread_pool.keep_alive.max_requests

ThreadPool 中保持活动的最大请求数。

double

gauge

apache_tomcat.thread_pool.keep_alive.timeout

ThreadPool 上的保持活动超时时间。

double

gauge

apache_tomcat.thread_pool.nio_connector

NIO 连接器的名称。

keyword

apache_tomcat.thread_pool.ssl_enabled

SSL 启用状态。

boolean

apache_tomcat.thread_pool.tcp_no_delay

在大多数情况下用于提高性能的 tcp 无延迟选项的状态。

boolean

apache_tomcat.thread_pool.thread.accept.count

接受的所有线程的计数。

double

counter

apache_tomcat.thread_pool.thread.active.count

JVM 级别的当前活动线程数(来自 java.lang:type=Threading)。

double

gauge

apache_tomcat.thread_pool.thread.allocated_memory.enabled

线程中已分配内存的启用状态。

boolean

apache_tomcat.thread_pool.thread.allocated_memory.supported

线程中支持的已分配内存状态。

boolean

apache_tomcat.thread_pool.thread.current.allocated.bytes

当前线程中已分配的字节数。

double

byte

counter

apache_tomcat.thread_pool.thread.current.busy

ThreadPool 中的当前忙碌线程数。

double

gauge

apache_tomcat.thread_pool.thread.current.count

从 ThreadPool 获取的当前线程数。

double

gauge

apache_tomcat.thread_pool.thread.current.cpu.time.enabled

当前线程的 CPU 时间。

boolean

apache_tomcat.thread_pool.thread.current.cpu.time.ms

CPU 时间,以毫秒为单位。

double

ms

gauge

apache_tomcat.thread_pool.thread.current.user.time.ms

用户时间,以毫秒为单位。

double

ms

gauge

apache_tomcat.thread_pool.thread.daemon.count

当前线程的守护线程计数。

double

gauge

apache_tomcat.thread_pool.thread.daemon.status

指示线程是否为守护线程的状态。

boolean

apache_tomcat.thread_pool.thread.paused

线程的暂停状态。

boolean

apache_tomcat.thread_pool.thread.peak.count

JVM 级别的峰值线程数(来自 java.lang:type=Threading)。

double

gauge

apache_tomcat.thread_pool.thread.port.default

Apache Tomcat 中线程的默认端口。

long

gauge

apache_tomcat.thread_pool.thread.port.offset

应用于线程端口的偏移量。

long

gauge

apache_tomcat.thread_pool.thread.port.value

线程的端口。

long

gauge

apache_tomcat.thread_pool.thread.port.with_offset

带有偏移量的线程端口。

long

gauge

apache_tomcat.thread_pool.thread.priority.acceptor

接受器线程的优先级。

double

gauge

apache_tomcat.thread_pool.thread.priority.count

线程的优先级。

double

gauge

apache_tomcat.thread_pool.thread.priority.poller

轮询器线程的优先级。

double

gauge

apache_tomcat.thread_pool.thread.requests.max

ThreadPool 的最大线程数,由连接器创建并用于请求。

double

counter

apache_tomcat.thread_pool.thread.running.min

始终保持运行的最小线程数。

double

gauge

apache_tomcat.thread_pool.thread.running.value

指示线程是否正在运行的状态。

boolean

apache_tomcat.thread_pool.thread.selector.timeout

选择器线程的超时时间。

double

gauge

apache_tomcat.thread_pool.thread.sni_parse_limit

线程的 SNI 解析限制。

double

gauge

apache_tomcat.thread_pool.thread.supported.contention_monitoring

这用于确定 Java 虚拟机是否支持线程争用监视。

boolean

apache_tomcat.thread_pool.thread.supported.cpu.current.time

是否支持当前线程在用户模式下执行的 CPU 时间。

boolean

apache_tomcat.thread_pool.thread.supported.usage.object_monitor

线程的对象监视器使用情况的支持。

boolean

apache_tomcat.thread_pool.thread.supported.usage.synchronizer

同步器使用情况的支持。

boolean

apache_tomcat.thread_pool.thread.total

JVM 级别的总线程数(来自 java.lang:type=Threading)。

double

gauge

apache_tomcat.thread_pool.use_inherited_channel

返回从创建此 Java 虚拟机的实体继承的通道。

boolean

apache_tomcat.thread_pool.use_send_file

使用 sendfile 将禁用 Tomcat 可能在响应上执行的任何压缩。

boolean

cloud.account.id

用于在多租户环境中标识不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机、资源或服务所在的可用区。

keyword

cloud.instance.id

主机机器的实例 ID。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机、资源或服务所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。

keyword

service.address

从中收集有关此服务的数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。

keyword

更新日志

编辑
更新日志
版本 详细信息 Kibana 版本

1.8.1

Bug 修复 (查看拉取请求)
修复访问日志中导致管道失败的 400 错误请求。

8.13.0 或更高版本

1.8.0

增强 (查看拉取请求)
允许 @custom 管道访问 event.original,而无需设置 preserve_original_event。

8.13.0 或更高版本

1.7.0

增强 (查看拉取请求)
ECS 版本更新至 8.11.0。删除了 import_mappings。将 Kibana 约束更新为 ^8.13.0。修改了字段定义,以删除 ecs@mappings 组件模板中冗余的 ECS 字段。

8.13.0 或更高版本

1.6.0

增强 (查看拉取请求)
在 data_stream.dataset 上添加全局过滤器以提高性能。

8.12.0 或更高版本

1.5.1

Bug 修复 (查看拉取请求)
修复“Harvester Limit”和“File Handle Closure duration”配置参数。

8.12.0 或更高版本

1.5.0

增强 (查看拉取请求)
为 harvester_limit 添加配置选项

8.12.0 或更高版本

1.4.0

增强 (查看拉取请求)
为敏感字段启用密钥。有关更多详细信息,请参阅 https://elastic.ac.cn/guide/en/fleet/current/agent-policy.html#agent-policy-secret-values

8.12.0 或更高版本

1.3.3

Bug 修复 (查看拉取请求)
修复重定向状态码 3xx 的 event.outcome。

8.8.0 或更高版本

1.3.2

Bug 修复 (查看拉取请求)
修复访问日志管道中 302 错误的非匹配 grok 模式。

8.8.0 或更高版本

1.3.1

Bug 修复 (查看拉取请求)
由于错误,禁用旧堆栈版本的密钥。

8.8.0 或更高版本

1.3.0

增强 (查看拉取请求)
为敏感字段启用密钥,从 8.12 开始支持。

8.8.0 或更高版本

1.2.0

增强 (查看拉取请求)
提高 apache_tomcat.access 管道性能

8.8.0 或更高版本

1.1.1

增强 (查看拉取请求)
改进 apache_tomcat 时间字段中毫秒的措辞

8.8.0 或更高版本

1.1.0

增强 (查看拉取请求)
提高 apache_tomcat.access 管道性能

8.8.0 或更高版本

1.0.0

增强 (查看拉取请求)
使 Apache Tomcat GA。

8.8.0 或更高版本

0.17.2

增强 (查看拉取请求)
更新 README.md 中的描述。

0.17.1

Bug 修复 (查看拉取请求)
修复管道测试并将 header_forwarder 字段重命名为 client.ip。

0.17.0

增强 (查看拉取请求)
使 catalina 和 localhost 日志的解析器可配置

0.16.0

增强 (查看拉取请求)
支持访问日志中的其他日志格式

0.15.0

增强 (查看拉取请求)
为请求和缓存数据流添加 TSDB 启用支持。

0.14.0

增强 (查看拉取请求)
将程序包 format_version 更新为 3.0.0。

0.13.0

增强 (查看拉取请求)
调整字段以适应文件系统信息中的更改

0.12.3

Bug 修复 (查看拉取请求)
向重命名处理器添加空值检查和 ignore_missing 检查

0.12.2

Bug 修复 (查看拉取请求)
从指标数据流中移除转发标签。

0.12.1

增强 (查看拉取请求)
在 README 中添加对 Catalina 和 Localhost 日志的支持日志格式。

0.12.0

增强 (查看拉取请求)
为日志和指标添加概览仪表板。

0.11.0

增强 (查看拉取请求)
带有 "connection_pool" 数据流的 Apache Tomcat 集成包。

0.10.0

增强 (查看拉取请求)
带有 "thread_pool" 数据流的 Apache Tomcat 集成包。

0.9.0

增强 (查看拉取请求)
带有 "memory" 数据流的 Apache Tomcat 集成包。

0.8.0

增强 (查看拉取请求)
更新处理器描述链接。

0.7.0

增强 (查看拉取请求)
带有 "session" 数据流的 Apache Tomcat 集成包。

0.6.0

增强 (查看拉取请求)
将所有权从 obs-service-integrations 重命名为 obs-infraobs-integrations

0.5.1

Bug 修复 (查看拉取请求)
删除 Localhost 仪表板并更新已保存的搜索。

0.5.0

增强 (查看拉取请求)
带有 "access" 数据流的 Apache Tomcat 集成包。

0.4.0

增强 (查看拉取请求)
带有 "localhost" 数据流的 Apache Tomcat 集成包。

0.3.0

增强 (查看拉取请求)
带有 "request" 数据流的 Apache Tomcat 集成包。

0.2.0

增强 (查看拉取请求)
带有 "cache" 数据流的 Apache Tomcat 集成包。

0.1.0

增强 (查看拉取请求)
带有 "catalina" 数据流的 Apache Tomcat 集成包。