question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

How to share schemas used with fields not in ECS

See original GitHub issue

Most implementations which use ECS have ECS as the basic fields but have their own fields on top. As inspiration for which fields could be added to ECS and and inspiration for other users it would be interesting if in the context of ECS people could share their used schemas for example with F5.

An current example we did with auditbeat data and the hash prefix can be found here: https://github.com/elastic/ecs/blob/a256a0cb7ca683b525f931ef030fc792848b7ae1/use-cases/auditbeat.yml#L78-L88

These fields are currently listed in use cases but commented out. A better solution is needed. One idea would be to have these use cases with the complete set of fields an user can contribute them but all fields which are not part of ECS are listed separately. The two things I worry here is that creating the fields.yml is sometimes too much overhead and sharing just a json would be easier, the other part is people might get confused on what is part of ECS and what is not.

Any ideas are more then welcome.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:13 (10 by maintainers)

github_iconTop GitHub Comments

1reaction
djptekcommented, May 4, 2021

Hi @ruflin the ECS repo now has tooling which allows for users to add their own fields in conjunction with ECS

1reaction
jordansisselcommented, Jul 19, 2018

@ruflin I had another thought, that perhaps field aliases (assuming they are going to land in Elasticsearch) might be another way to solve this.

My ECS transform is done in Go right now before ingestion, for example, and I copy things as-is without modifying the values (to change types from string/date/number/etc). Instead, with field aliases, we could provide this to Elasticsearch and let it do the mappings (This assumes the field values are usable as-is without modification, though?)

For Okta, for example, I transform actor.alternateId to be ECS’ user.id. If Elasticsearch gets field aliases, then an ingest author doesn’t need to do this transform because we can tell Elasticsearch “The field user.id comes from the actor.alternateId field”. This may be the best of both worlds where we can allow search/aggs by ECS but we don’t actually modify the source data, so subject matter experts would see Okta System Logs (for example) in their native format and we can still build dashboards against the ECS schema.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Elastic Common Schema (ECS) Reference
The Elastic Common Schema (ECS) is an open source specification, developed with support from the Elastic user community. ECS defines a common set...
Read more >
Elastic Common Schema (ECS): The Common Event Model ...
In later blog posts, we'll cover how to map your data to ECS (including fields that aren't defined in the schema) and strategies...
Read more >
RunTask - Amazon Elastic Container Service
Starts a new task using the specified task definition. You can allow Amazon ECS to place tasks for you, or you can customize...
Read more >
Map available fields in logs to Elastic Common Schema format ...
I'm trying to log all my requests, responses and application logs in the ECS Format - https://www ...
Read more >
Elastic Common Schema (ECS) - NXLog Documentation
While the schema includes hundreds of fields, it simply acts as a guideline and can be tailored according to the use case. It...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found