diff --git a/packages/rabbitmq/changelog.yml b/packages/rabbitmq/changelog.yml index e99dcf2b50cf..2341b3b734ea 100644 --- a/packages/rabbitmq/changelog.yml +++ b/packages/rabbitmq/changelog.yml @@ -1,3 +1,8 @@ +- version: "1.8.7" + changes: + - description: Added metrictype for the fields of queue datastream. + type: enhancement + link: https://github.com/elastic/integrations/pull/5670 - version: "1.8.6" changes: - description: Add metric_type for the fields of node datastream. diff --git a/packages/rabbitmq/data_stream/queue/fields/fields.yml b/packages/rabbitmq/data_stream/queue/fields/fields.yml index 2e86ef74433a..cfe158b63aa0 100644 --- a/packages/rabbitmq/data_stream/queue/fields/fields.yml +++ b/packages/rabbitmq/data_stream/queue/fields/fields.yml @@ -25,55 +25,68 @@ The state of the queue. Normally 'running', but may be `"{syncing, MsgCount}"` if the queue is synchronising. Queues which are located on cluster nodes that are currently down will be shown with a status of 'down'. - name: arguments.max_priority type: long + metric_type: gauge description: | Maximum number of priority levels for the queue to support. - name: consumers.count type: long + metric_type: gauge description: | Number of consumers. - name: consumers.utilisation.pct type: long format: percent + metric_type: gauge description: | Fraction of the time (between 0.0 and 1.0) that the queue is able to immediately deliver messages to consumers. This can be less than 1.0 if consumers are limited by network congestion or prefetch count. - name: messages.total.count type: long + metric_type: gauge description: | Sum of ready and unacknowledged messages (queue depth). - name: messages.total.details.rate type: float + metric_type: gauge description: | How much the queue depth has changed per second in the most recent sampling interval. - name: messages.ready.count type: long + metric_type: gauge description: | Number of messages ready to be delivered to clients. - name: messages.ready.details.rate type: float + metric_type: gauge description: | How much the count of messages ready has changed per second in the most recent sampling interval. - name: messages.unacknowledged.count type: long + metric_type: gauge description: | Number of messages delivered to clients but not yet acknowledged. - name: messages.unacknowledged.details.rate type: float + metric_type: gauge description: | How much the count of unacknowledged messages has changed per second in the most recent sampling interval. - name: messages.persistent.count type: long + metric_type: gauge description: | Total number of persistent messages in the queue (will always be 0 for transient queues). - name: memory.bytes type: long format: bytes + metric_type: gauge description: | Bytes of memory consumed by the Erlang process associated with the queue, including stack, heap and internal structures. - name: disk.reads.count type: long + metric_type: counter description: | Total number of times messages have been read from disk by this queue since it started. - name: disk.writes.count type: long + metric_type: counter description: | Total number of times messages have been written to disk by this queue since it started. diff --git a/packages/rabbitmq/docs/README.md b/packages/rabbitmq/docs/README.md index c16e90c30b86..58a17d3999ac 100644 --- a/packages/rabbitmq/docs/README.md +++ b/packages/rabbitmq/docs/README.md @@ -591,64 +591,64 @@ An example event for `queue` looks as following: **Exported fields** -| Field | Description | Type | -|---|---|---| -| @timestamp | Event timestamp. | date | -| agent.id | | keyword | -| cloud.account.id | The cloud account or organization id used to identify different entities in a multi-tenant environment. Examples: AWS account id, Google Cloud ORG Id, or other unique identifier. | keyword | -| cloud.availability_zone | Availability zone in which this host is running. | keyword | -| cloud.image.id | Image ID for the cloud instance. | keyword | -| cloud.instance.id | Instance ID of the host machine. | keyword | -| cloud.instance.name | Instance name of the host machine. | keyword | -| cloud.machine.type | Machine type of the host machine. | keyword | -| cloud.project.id | Name of the project in Google Cloud. | keyword | -| cloud.provider | Name of the cloud provider. Example values are aws, azure, gcp, or digitalocean. | keyword | -| cloud.region | Region in which this host is running. | keyword | -| container.id | Unique container id. | keyword | -| container.image.name | Name of the image the container was built on. | keyword | -| container.labels | Image labels. | object | -| container.name | Container name. | keyword | -| data_stream.dataset | Data stream dataset. | constant_keyword | -| data_stream.namespace | Data stream namespace. | constant_keyword | -| data_stream.type | Data stream type. | constant_keyword | -| ecs.version | ECS version this event conforms to. `ecs.version` is a required field and must exist in all events. When querying across multiple indices -- which may conform to slightly different ECS versions -- this field lets integrations adjust to the schema version of the events. | keyword | -| event.dataset | Event dataset | constant_keyword | -| event.module | Event module | constant_keyword | -| host.architecture | Operating system architecture. | keyword | -| host.containerized | If the host is a container. | boolean | -| host.domain | Name of the domain of which the host is a member. For example, on Windows this could be the host's Active Directory domain or NetBIOS domain name. For Linux this could be the domain of the host's LDAP provider. | keyword | -| host.hostname | Hostname of the host. It normally contains what the `hostname` command returns on the host machine. | keyword | -| host.id | Unique host id. As hostname is not always unique, use values that are meaningful in your environment. Example: The current usage of `beat.name`. | keyword | -| host.ip | Host ip addresses. | ip | -| host.mac | Host mac addresses. | keyword | -| host.name | Name of the host. It can contain what `hostname` returns on Unix systems, the fully qualified domain name, or a name specified by the user. The sender decides which value to use. | keyword | -| host.os.build | OS build information. | keyword | -| host.os.codename | OS codename, if any. | keyword | -| host.os.family | OS family (such as redhat, debian, freebsd, windows). | keyword | -| host.os.kernel | Operating system kernel version as a raw string. | keyword | -| host.os.name | Operating system name, without the version. | keyword | -| host.os.name.text | Multi-field of `host.os.name`. | text | -| host.os.platform | Operating system platform (such centos, ubuntu, windows). | keyword | -| host.os.version | Operating system version as a raw string. | keyword | -| host.type | Type of host. For Cloud providers this can be the machine type like `t2.medium`. If vm, this could be the container, for example, or other information meaningful in your environment. | keyword | -| rabbitmq.queue.arguments.max_priority | Maximum number of priority levels for the queue to support. | long | -| rabbitmq.queue.auto_delete | Whether the queue will be deleted automatically when no longer used. | boolean | -| rabbitmq.queue.consumers.count | Number of consumers. | long | -| rabbitmq.queue.consumers.utilisation.pct | Fraction of the time (between 0.0 and 1.0) that the queue is able to immediately deliver messages to consumers. This can be less than 1.0 if consumers are limited by network congestion or prefetch count. | long | -| rabbitmq.queue.disk.reads.count | Total number of times messages have been read from disk by this queue since it started. | long | -| rabbitmq.queue.disk.writes.count | Total number of times messages have been written to disk by this queue since it started. | long | -| rabbitmq.queue.durable | Whether or not the queue survives server restarts. | boolean | -| rabbitmq.queue.exclusive | Whether the queue is exclusive (i.e. has owner_pid). | boolean | -| rabbitmq.queue.memory.bytes | Bytes of memory consumed by the Erlang process associated with the queue, including stack, heap and internal structures. | long | -| rabbitmq.queue.messages.persistent.count | Total number of persistent messages in the queue (will always be 0 for transient queues). | long | -| rabbitmq.queue.messages.ready.count | Number of messages ready to be delivered to clients. | long | -| rabbitmq.queue.messages.ready.details.rate | How much the count of messages ready has changed per second in the most recent sampling interval. | float | -| rabbitmq.queue.messages.total.count | Sum of ready and unacknowledged messages (queue depth). | long | -| rabbitmq.queue.messages.total.details.rate | How much the queue depth has changed per second in the most recent sampling interval. | float | -| rabbitmq.queue.messages.unacknowledged.count | Number of messages delivered to clients but not yet acknowledged. | long | -| rabbitmq.queue.messages.unacknowledged.details.rate | How much the count of unacknowledged messages has changed per second in the most recent sampling interval. | float | -| rabbitmq.queue.name | The name of the queue with non-ASCII characters escaped as in C. | keyword | -| rabbitmq.queue.state | The state of the queue. Normally 'running', but may be `"\{syncing, MsgCount\}"` if the queue is synchronising. Queues which are located on cluster nodes that are currently down will be shown with a status of 'down'. | keyword | -| rabbitmq.vhost | Virtual host name with non-ASCII characters escaped as in C. | keyword | -| service.address | Address where data about this service was collected from. This should be a URI, network address (ipv4:port or [ipv6]:port) or a resource path (sockets). | keyword | -| service.type | The type of the service data is collected from. The type can be used to group and correlate logs and metrics from one service type. Example: If logs or metrics are collected from Elasticsearch, `service.type` would be `elasticsearch`. | keyword | +| Field | Description | Type | Metric Type | +|---|---|---|---| +| @timestamp | Event timestamp. | date | | +| agent.id | | keyword | | +| cloud.account.id | The cloud account or organization id used to identify different entities in a multi-tenant environment. Examples: AWS account id, Google Cloud ORG Id, or other unique identifier. | keyword | | +| cloud.availability_zone | Availability zone in which this host is running. | keyword | | +| cloud.image.id | Image ID for the cloud instance. | keyword | | +| cloud.instance.id | Instance ID of the host machine. | keyword | | +| cloud.instance.name | Instance name of the host machine. | keyword | | +| cloud.machine.type | Machine type of the host machine. | keyword | | +| cloud.project.id | Name of the project in Google Cloud. | keyword | | +| cloud.provider | Name of the cloud provider. Example values are aws, azure, gcp, or digitalocean. | keyword | | +| cloud.region | Region in which this host is running. | keyword | | +| container.id | Unique container id. | keyword | | +| container.image.name | Name of the image the container was built on. | keyword | | +| container.labels | Image labels. | object | | +| container.name | Container name. | keyword | | +| data_stream.dataset | Data stream dataset. | constant_keyword | | +| data_stream.namespace | Data stream namespace. | constant_keyword | | +| data_stream.type | Data stream type. | constant_keyword | | +| ecs.version | ECS version this event conforms to. `ecs.version` is a required field and must exist in all events. When querying across multiple indices -- which may conform to slightly different ECS versions -- this field lets integrations adjust to the schema version of the events. | keyword | | +| event.dataset | Event dataset | constant_keyword | | +| event.module | Event module | constant_keyword | | +| host.architecture | Operating system architecture. | keyword | | +| host.containerized | If the host is a container. | boolean | | +| host.domain | Name of the domain of which the host is a member. For example, on Windows this could be the host's Active Directory domain or NetBIOS domain name. For Linux this could be the domain of the host's LDAP provider. | keyword | | +| host.hostname | Hostname of the host. It normally contains what the `hostname` command returns on the host machine. | keyword | | +| host.id | Unique host id. As hostname is not always unique, use values that are meaningful in your environment. Example: The current usage of `beat.name`. | keyword | | +| host.ip | Host ip addresses. | ip | | +| host.mac | Host mac addresses. | keyword | | +| host.name | Name of the host. It can contain what `hostname` returns on Unix systems, the fully qualified domain name, or a name specified by the user. The sender decides which value to use. | keyword | | +| host.os.build | OS build information. | keyword | | +| host.os.codename | OS codename, if any. | keyword | | +| host.os.family | OS family (such as redhat, debian, freebsd, windows). | keyword | | +| host.os.kernel | Operating system kernel version as a raw string. | keyword | | +| host.os.name | Operating system name, without the version. | keyword | | +| host.os.name.text | Multi-field of `host.os.name`. | text | | +| host.os.platform | Operating system platform (such centos, ubuntu, windows). | keyword | | +| host.os.version | Operating system version as a raw string. | keyword | | +| host.type | Type of host. For Cloud providers this can be the machine type like `t2.medium`. If vm, this could be the container, for example, or other information meaningful in your environment. | keyword | | +| rabbitmq.queue.arguments.max_priority | Maximum number of priority levels for the queue to support. | long | gauge | +| rabbitmq.queue.auto_delete | Whether the queue will be deleted automatically when no longer used. | boolean | | +| rabbitmq.queue.consumers.count | Number of consumers. | long | gauge | +| rabbitmq.queue.consumers.utilisation.pct | Fraction of the time (between 0.0 and 1.0) that the queue is able to immediately deliver messages to consumers. This can be less than 1.0 if consumers are limited by network congestion or prefetch count. | long | gauge | +| rabbitmq.queue.disk.reads.count | Total number of times messages have been read from disk by this queue since it started. | long | counter | +| rabbitmq.queue.disk.writes.count | Total number of times messages have been written to disk by this queue since it started. | long | counter | +| rabbitmq.queue.durable | Whether or not the queue survives server restarts. | boolean | | +| rabbitmq.queue.exclusive | Whether the queue is exclusive (i.e. has owner_pid). | boolean | | +| rabbitmq.queue.memory.bytes | Bytes of memory consumed by the Erlang process associated with the queue, including stack, heap and internal structures. | long | gauge | +| rabbitmq.queue.messages.persistent.count | Total number of persistent messages in the queue (will always be 0 for transient queues). | long | gauge | +| rabbitmq.queue.messages.ready.count | Number of messages ready to be delivered to clients. | long | gauge | +| rabbitmq.queue.messages.ready.details.rate | How much the count of messages ready has changed per second in the most recent sampling interval. | float | gauge | +| rabbitmq.queue.messages.total.count | Sum of ready and unacknowledged messages (queue depth). | long | gauge | +| rabbitmq.queue.messages.total.details.rate | How much the queue depth has changed per second in the most recent sampling interval. | float | gauge | +| rabbitmq.queue.messages.unacknowledged.count | Number of messages delivered to clients but not yet acknowledged. | long | gauge | +| rabbitmq.queue.messages.unacknowledged.details.rate | How much the count of unacknowledged messages has changed per second in the most recent sampling interval. | float | gauge | +| rabbitmq.queue.name | The name of the queue with non-ASCII characters escaped as in C. | keyword | | +| rabbitmq.queue.state | The state of the queue. Normally 'running', but may be `"\{syncing, MsgCount\}"` if the queue is synchronising. Queues which are located on cluster nodes that are currently down will be shown with a status of 'down'. | keyword | | +| rabbitmq.vhost | Virtual host name with non-ASCII characters escaped as in C. | keyword | | +| service.address | Address where data about this service was collected from. This should be a URI, network address (ipv4:port or [ipv6]:port) or a resource path (sockets). | keyword | | +| service.type | The type of the service data is collected from. The type can be used to group and correlate logs and metrics from one service type. Example: If logs or metrics are collected from Elasticsearch, `service.type` would be `elasticsearch`. | keyword | | diff --git a/packages/rabbitmq/manifest.yml b/packages/rabbitmq/manifest.yml index 71efaad66729..052dddcbbac5 100644 --- a/packages/rabbitmq/manifest.yml +++ b/packages/rabbitmq/manifest.yml @@ -1,7 +1,7 @@ format_version: 1.0.0 name: rabbitmq -title: RabbitMQ Logs -version: 1.8.6 +title: RabbitMQ Logs and Metrics +version: 1.8.7 license: basic description: Collect and parse logs from RabbitMQ servers with Elastic Agent. type: integration