-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Security Solution] Expandably flyout - Enable expandable flyout for generic events #176332
Conversation
Pinging @elastic/security-threat-hunting (Team:Threat Hunting) |
Pinging @elastic/security-threat-hunting-investigations (Team:Threat Hunting:Investigations) |
more details on the criteria https://github.com/elastic/security-team/issues/7759 |
4ea7ea7
to
669801a
Compare
To test all the event renderer scenarios:
|
c77c0c2
to
423215f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks really good! I left a few comments. I feel like the biggest thing we need to iron out is related to UI.
It feels weird that we show the rule name for a signal event, but then show something different for other types...
x-pack/plugins/security_solution/public/flyout/document_details/left/context.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/left/tabs.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/left/tabs/insights_tab.tsx
Outdated
Show resolved
Hide resolved
...ins/security_solution/public/flyout/document_details/right/components/about_section.test.tsx
Outdated
Show resolved
Hide resolved
...ins/security_solution/public/flyout/document_details/right/components/about_section.test.tsx
Outdated
Show resolved
Hide resolved
.../plugins/security_solution/public/flyout/document_details/right/components/about_section.tsx
Outdated
Show resolved
Hide resolved
.../plugins/security_solution/public/flyout/document_details/right/components/about_section.tsx
Show resolved
Hide resolved
...gins/security_solution/public/flyout/document_details/right/hooks/use_show_event_overview.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/right/utils/event_utils.tsx
Outdated
Show resolved
Hide resolved
5e8ab8b
to
bfa3f6d
Compare
bfa3f6d
to
326cba2
Compare
663c8b7
to
595df9c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is getting close, thanks for making all the changes!
I left a few more comments on the code and a UI question
x-pack/plugins/security_solution/public/flyout/document_details/left/tabs/insights_tab.tsx
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/right/context.tsx
Outdated
Show resolved
Hide resolved
...gins/security_solution/public/flyout/document_details/right/hooks/use_show_event_overview.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/security_solution/public/flyout/document_details/right/utils/event_utils.tsx
Outdated
Show resolved
Hide resolved
d835b81
to
bba0226
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for making all the changes @christineweng the code looks awesome!!
b991eb3
to
de002ec
Compare
de002ec
to
ea82637
Compare
💛 Build succeeded, but was flaky
Failed CI StepsMetrics [docs]Module Count
Async chunks
Page load bundle
History
To update your PR or re-run it, just comment with: |
…generic events (elastic#176332) ## Summary This PR enables the overview tab and left section insights for a generic event. When user to go `host` or `user` page and expand details for an event, in addition to table and json tab, they now have access to: - Overview tab on the right section, which provide description of the event kind or event category (detail logic linked in comment), key insights such as highlighted fields, entities, prevalence and visualization previews (if available) - Expanded details that includes entities details and prevalence details Many sections are shared by the alert details flyout, which we are hoping to provide a unified experience when user opens the details flyout. #### When overview and expanded sections are enabled #### - Ideally `event.kind` and `event.category` should be ecs compliant, meaning the field values are of `allowed_values` within [ecs definition](https://www.elastic.co/guide/en/ecs/current/ecs-event.html). - If the field is not ecs compliant, and it does not fit the criteria to generate an event renderer, the overview tab and expanded sections are hidden #### Variations depending on event kind #### There is a variation of the about section depending on `event.kind`: - `event.kind == 'event'` - This is the most general and common event document, hence we provide details at the `event.category` level. - The title is also dynamic based on the category type (i.e if `event.category` is process, the `process.name` is displayed) - `event.kind != 'event'` - These are events that not as common/general as `event` so we are providing description at the `event.kind` level - The title matches the `event.kind` field - `event.category` is included as a list of categories present for the document <img width="1006" alt="image" src="https://github.com/elastic/kibana/assets/18648970/bb540c62-4346-4dc6-8c11-3ad6cdd1e7c9"> #### How to test #### - Enable feature flag `expandableEventFlyoutEnabled` - Generate some event data (the resolver generate data script is sufficient to the test main logic, to get the event renderer to show up, see comment on feeding additional data), alternatively, auditbeat and filebeat also feed event data. - Go to Explore -> Host -> Events table -> expand event details ### Checklist Delete any items that are not applicable to this PR. - [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md) - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios
Summary
This PR enables the overview tab and left section insights for a generic event. When user to go
host
oruser
page and expand details for an event, in addition to table and json tab, they now have access to:Many sections are shared by the alert details flyout, which we are hoping to provide a unified experience when user opens the details flyout.
When overview and expanded sections are enabled
event.kind
andevent.category
should be ecs compliant, meaning the field values are ofallowed_values
within ecs definition.Variations depending on event kind
There is a variation of the about section depending on
event.kind
:event.kind == 'event'
event.category
level.event.category
is process, theprocess.name
is displayed)event.kind != 'event'
event
so we are providing description at theevent.kind
levelevent.kind
fieldevent.category
is included as a list of categories present for the documentHow to test
expandableEventFlyoutEnabled
Checklist
Delete any items that are not applicable to this PR.