# Tagging Patterns of data into a field

**URL:** https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164
**Category:** Logstash
**Created:** [August 8, 2017, 12:37am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164 "2017-08-08T00:37:40Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![Drift](https://avatars.discourse-cdn.com/v4/letter/d/8797f3/32.png) [@Drift](https://discuss.elastic.co/u/Drift)
#### Post date: [August 8, 2017, 12:37am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/1 "2017-08-08T00:37:40Z")

</div>

Hi,

I have a data set which has a field that contain different values like:

FieldA : AAAA-REL  
FieldA : AAAA-DEV  
FieldA : BBBB-REL  
FieldA : DDDD-REL  
FieldA : BBBB-DEV

... and so on

I want to tag or categorize these fields by adding a tag or a new field and grouping them as say:

All fields that contain "AAAA\*" , tag them as say "Prime"  
All fields that contain "BBBB\*" tag them as say "Secondary"  
All that contain "CCCC\*" tag them as say "Tertiary"

and so on. Note that the mapping could go on to ZZZZ.  
I could use grok pattern for each of these, but looks like thats a lot of processing and would probablu impact the performance.

- Is there an easier way to do this mapping, like for ex have a file of patterns and then look it up before tagging?
- My logstash talks to elastic. Is there anything in elastic I could use to achieve this
- If not, I use Kibana. Can scripted field help for this scenario?

---

<div class="post-metadata">

### Author: ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)
#### Post date: [August 8, 2017, 6:17am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/2 "2017-08-08T06:17:16Z")

</div>

If you can extract the classification criteria (AAAA, BBBB etc) to a separate field with e.g. a grok filter you can use a translate filter to look up the value in a separate file and avoid having dozens (or hundreds?) of grok or mutate filters.

---

<div class="post-metadata">

### Author: ![Drift](https://avatars.discourse-cdn.com/v4/letter/d/8797f3/32.png) [@Drift](https://discuss.elastic.co/u/Drift)
#### Post date: [August 8, 2017, 8:47am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/3 "2017-08-08T08:47:12Z")

</div>

Hi Magnus,

I did that already. I have a filter that groks just AAAA or BBBB etc into a seperate field. But then, AAAA is not a friendly field as it needs to be represented as say "Prime" or tagged as "Prime". So I am still at the same place.

---

<div class="post-metadata">

### Author: ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)
#### Post date: [August 8, 2017, 8:56am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/4 "2017-08-08T08:56:33Z")

</div>

As I said, use a translate filter to turn "AAAA" into "Prime".

---

<div class="post-metadata">

### Author: ![Drift](https://avatars.discourse-cdn.com/v4/letter/d/8797f3/32.png) [@Drift](https://discuss.elastic.co/u/Drift)
#### Post date: [August 9, 2017, 2:19am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/5 "2017-08-09T02:19:32Z")

</div>

> [@magnusbaeck](#):
>
> translate filter

Thats a nice one! Thanks Magnus, I will try this out.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [September 6, 2017, 2:19am UTC](https://discuss.elastic.co/t/tagging-patterns-of-data-into-a-field/96164/6 "2017-09-06T02:19:45Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
