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

[ECS] Meta-issue to track last minute ECS-related fixes for 7.0 #11534

Closed
9 of 10 tasks
webmat opened this issue Mar 29, 2019 · 12 comments
Closed
9 of 10 tasks

[ECS] Meta-issue to track last minute ECS-related fixes for 7.0 #11534

webmat opened this issue Mar 29, 2019 · 12 comments
Assignees

Comments

@webmat
Copy link
Contributor

webmat commented Mar 29, 2019

With more eyes on 7.0, we're finding a bunch of small things that still need adjusting. This is to keep track of them all.

Please add your items right in this list, and ping via a comment to notify of any additions

@webmat webmat self-assigned this Mar 29, 2019
@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

ping @ruflin @EthanStrider @fearful-symmetry

@webmat webmat changed the title [ECS] Meta-issue to track last minute fixes for 7.0 [ECS] Meta-issue to track last minute ECS-related fixes for 7.0 Mar 29, 2019
@fearful-symmetry
Copy link
Contributor

Currently doing some scripting to find suspect dashboard fields. Still need to look them over, then I'll post what I find here.

@fearful-symmetry
Copy link
Contributor

Okay, so I modified @ruflin's script to look for all pre-ecs fields, not just alias ones. It's a tad janky, but I found a few things we should at least look at.

Looks like the ecs-migration script wants to to this into "log.log.level:critical"

Ditto with the mongo dashboard here

and here

The packetbeat dashboards also need to be looked at:

https://github.com/elastic/beats/blob/7.0/packetbeat/_meta/kibana/7/dashboard/Packetbeat-mongodb.json

https://github.com/elastic/beats/blob/7.0/packetbeat/_meta/kibana/7/dashboard/Packetbeat-mongodb.json

https://github.com/elastic/beats/blob/7.0/packetbeat/_meta/kibana/7/dashboard/Packetbeat-mongodb.json

https://github.com/elastic/beats/blob/7.0/packetbeat/_meta/kibana/7/dashboard/Packetbeat-pgsql.json

https://github.com/elastic/beats/blob/7.0/packetbeat/_meta/kibana/7/dashboard/Packetbeat-thrift.json

All show fields that the python script wants to change, mostly of the form "method" -> "http.request.method"

The script also seems fairly blunt, for a lot of the sql dashboards it wants to change
"query": "method: SELECT" -> "query": "http.request.method: SELECT" Which doesn't seem right.

@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

@fearful-symmetry Ah the Packetbeat ones must not be migrated. It parses many kinds of protocols, so while the value of method is being copied over to http.request.method, Packetbeat still uses method across the board for all protocols.

So Pb doesn't need to be adjusted for this

@fearful-symmetry
Copy link
Contributor

Yah, thought those seemed suspect.

@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

Added a task:

Double-check dashboards with visualizations on event.duration, to see if scale differences are causing problems

@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

Ok, with #11527 merged, things aren't as bad for the Filebeat modules. Still a few left, though.

Here's the relevant entries from searching with ag '"field":' filebeat/module/*/_meta/kibana:

filebeat/module/logstash/_meta/kibana/7/dashboard/Filebeat-logstash-slowlog.json
120:                                "field": "log.level",
175:                                "field": "@timestamp",
186:                                "field": "log.level",
303:                                "field": "logstash.slowlog.took_in_millis"
313:                                "field": "logstash.slowlog.took_in_millis"
323:                                "field": "logstash.slowlog.plugin_name",
336:                                "field": "logstash.slowlog.took_in_millis"
346:                                "field": "logstash.slowlog.plugin_type",

filebeat/module/redis/_meta/kibana/7/dashboard/Filebeat-redis.json
34:                                "field": "redis.log.role",
47:                                "field": "log.level",
111:                                "field": "@timestamp",
122:                                "field": "log.level",
321:                                "field": "redis.slowlog.duration.us"
331:                                "field": "redis.slowlog.cmd",

filebeat/module/system/_meta/kibana/7/dashboard/Filebeat-auth-sudo-commands.json
30:                                "field": "@timestamp",
41:                                "field": "system.auth.user",
102:                                "field": "@timestamp",
113:                                "field": "system.auth.sudo.error",
176:                                "field": "system.auth.sudo.command",
188:                                "field": "system.auth.user",

filebeat/module/system/_meta/kibana/7/dashboard/Filebeat-new-users-and-groups.json
38:                                "field": "host.hostname",
51:                                "field": "system.auth.useradd.name",
64:                                "field": "user.id",
77:                                "field": "system.auth.useradd.gid",
90:                                "field": "system.auth.useradd.home",
103:                                "field": "system.auth.useradd.shell",
159:                                "field": "@timestamp",
170:                                "field": "system.auth.useradd.name",
233:                                "field": "system.auth.useradd.shell",
245:                                "field": "system.auth.useradd.name",
304:                                "field": "system.auth.useradd.home",
316:                                "field": "system.auth.useradd.name",
374:                                "field": "system.auth.groupadd.name",
386:                                "field": "group.id",
442:                                "field": "@timestamp",
453:                                "field": "system.auth.groupadd.name",

filebeat/module/system/_meta/kibana/7/dashboard/Filebeat-ssh-login-attempts.json
45:                                "field": "@timestamp",
56:                                "field": "system.auth.ssh.method",
121:                                "field": "@timestamp",
132:                                "field": "event.action",
191:                                "field": "system.auth.user",
252:                                "field": "source.geo.location",

Some of these fields are correct but some don't look right. I'll open up a PR

@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

Here's the breakdown on these fields.

  • The last 3 chunks are all for the system module, and were missing from ecs-migration.yml. So the script didn't change them in the dashboards, and they're not in the documentation file
  • Redis' redis.slowlog.duration.us was simply not migrated at all. I'll open a separate PR for this one, in case someone disagrees about such a change so late.
  • Logstash' slowlog has 2 fields for duration. One in nanos, one in millis. The nanos one was migrated to event.duration, and the dashboard uses the millis (which is still present in the events). No breaking changes required for this fix, so this could be fixed later, if there's no time to get to this.

@fearful-symmetry
Copy link
Contributor

Yah, I was gonna say, based on your data it looks like a few things were left out of the ecs-migration file.

@webmat
Copy link
Contributor Author

webmat commented Mar 29, 2019

Hand curation FTW

@webmat
Copy link
Contributor Author

webmat commented Apr 1, 2019

Closing this. I've double-checked the last remaining thing that worried me in what we looked at last week.

Seems like the only kibana object using event.duration in a way that needed to be adjusted has been adjusted in #10604

@webmat webmat closed this as completed Apr 1, 2019
@ruflin
Copy link
Collaborator

ruflin commented Apr 2, 2019

@webmat @fearful-symmetry Thanks for making this happen 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants