Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Kubernetes] Reference ECS fields and add agent.id field #8697

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ corpora:
config:
path: ./container-benchmark/config.yml
fields:
path: ./container-benchmark/fields.yml
path: ./container-benchmark/fields.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@
- name: agent.snapshot
type: boolean
- name: container.name
type: keyword
type: keyword
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ corpora:
config:
path: ./pod-benchmark/config.yml
fields:
path: ./pod-benchmark/fields.yml
path: ./pod-benchmark/fields.yml
5 changes: 5 additions & 0 deletions packages/kubernetes/changelog.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# newer versions go on top
- version: 1.55.1
changes:
- description: Modify the field definitions to reference ECS.
type: enhancement
link: https://github.com/elastic/integrations/pull/8697
- version: 1.55.0
changes:
- description: Remove extra base fields from state data streams.
Expand Down
158 changes: 26 additions & 132 deletions packages/kubernetes/data_stream/apiserver/fields/agent.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,51 +6,21 @@
type: group
fields:
- name: account.id
level: extended
type: keyword
ignore_above: 1024
description: '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.'
example: 666777888999
external: ecs
- name: availability_zone
level: extended
type: keyword
ignore_above: 1024
description: Availability zone in which this host is running.
example: us-east-1c
external: ecs
- name: instance.id
level: extended
type: keyword
ignore_above: 1024
description: Instance ID of the host machine.
example: i-1234567890abcdef0
external: ecs
- name: instance.name
level: extended
type: keyword
ignore_above: 1024
description: Instance name of the host machine.
external: ecs
- name: machine.type
level: extended
type: keyword
ignore_above: 1024
description: Machine type of the host machine.
example: t2.medium
external: ecs
- name: provider
level: extended
type: keyword
ignore_above: 1024
description: Name of the cloud provider. Example values are aws, azure, gcp, or digitalocean.
example: aws
external: ecs
- name: region
level: extended
type: keyword
ignore_above: 1024
description: Region in which this host is running.
example: us-east-1
external: ecs
- name: project.id
type: keyword
description: Name of the project in Google Cloud.
external: ecs
- name: image.id
type: keyword
description: Image ID for the cloud instance.
Expand All @@ -63,25 +33,13 @@
type: group
fields:
- name: id
level: core
type: keyword
ignore_above: 1024
description: Unique container id.
external: ecs
- name: image.name
level: extended
type: keyword
ignore_above: 1024
description: Name of the image the container was built on.
external: ecs
- name: labels
level: extended
type: object
object_type: keyword
description: Image labels.
external: ecs
- name: name
level: extended
type: keyword
ignore_above: 1024
description: Container name.
external: ecs
- name: host
title: Host
group: 2
Expand All @@ -91,94 +49,31 @@
type: group
fields:
- name: architecture
level: core
type: keyword
ignore_above: 1024
description: Operating system architecture.
example: x86_64
external: ecs
- name: domain
level: extended
type: keyword
ignore_above: 1024
description: '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.'
example: CONTOSO
default_field: false
external: ecs
- name: hostname
level: core
type: keyword
ignore_above: 1024
description: 'Hostname of the host.

It normally contains what the `hostname` command returns on the host machine.'
external: ecs
- name: id
level: core
type: keyword
ignore_above: 1024
description: 'Unique host id.

As hostname is not always unique, use values that are meaningful in your environment.

Example: The current usage of `beat.name`.'
external: ecs
- name: ip
level: core
type: ip
description: Host ip addresses.
external: ecs
- name: mac
level: core
type: keyword
ignore_above: 1024
description: Host mac addresses.
external: ecs
- name: name
level: core
type: keyword
ignore_above: 1024
description: '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.'
external: ecs
- name: os.family
level: extended
type: keyword
ignore_above: 1024
description: OS family (such as redhat, debian, freebsd, windows).
example: debian
external: ecs
- name: os.kernel
level: extended
type: keyword
ignore_above: 1024
description: Operating system kernel version as a raw string.
example: 4.4.0-112-generic
external: ecs
- name: os.name
level: extended
type: keyword
ignore_above: 1024
multi_fields:
- name: text
type: text
norms: false
default_field: false
description: Operating system name, without the version.
example: Mac OS X
external: ecs
- name: os.platform
level: extended
type: keyword
ignore_above: 1024
description: Operating system platform (such centos, ubuntu, windows).
example: darwin
external: ecs
- name: os.version
level: extended
type: keyword
ignore_above: 1024
description: Operating system version as a raw string.
example: 10.14.1
external: ecs
- name: type
level: core
type: keyword
ignore_above: 1024
description: '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.'
external: ecs
- name: containerized
type: boolean
description: >
Expand All @@ -193,6 +88,5 @@
- name: os.codename
type: keyword
example: "stretch"
description: >
description: >-
OS codename, if any.

Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
- name: data_stream.type
type: constant_keyword
description: Data stream type.
external: ecs
- name: data_stream.dataset
type: constant_keyword
description: Data stream dataset.
external: ecs
- name: data_stream.namespace
type: constant_keyword
description: Data stream namespace.
external: ecs
- name: '@timestamp'
type: date
description: Event timestamp.
external: ecs
3 changes: 3 additions & 0 deletions packages/kubernetes/data_stream/apiserver/fields/ecs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,6 @@
name: orchestrator.cluster.name
- external: ecs
name: orchestrator.cluster.url
- name: agent.id
external: ecs
dimension: true
2 changes: 1 addition & 1 deletion packages/kubernetes/data_stream/apiserver/manifest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,13 @@ streams:
show_user: false
description: >
Processors are used to reduce the number of fields in the exported event or to enhance the event with metadata. This executes in the agent before the events are shipped. See [Processors](https://www.elastic.co/guide/en/beats/filebeat/current/filtering-and-enhancing-data.html) for details.

constanca-m marked this conversation as resolved.
Show resolved Hide resolved
- name: condition
title: Condition
description: Condition to filter when to collect this input. See [Dynamic Input Configuration](https://www.elastic.co/guide/en/fleet/current/dynamic-input-configuration.html) for details.
type: text
multi: false
required: false
show_user: false

title: Kubernetes API Server metrics
description: Collect Kubernetes API Server metrics
Loading