crowdstrike.fdr: Add if conditions and opt-out config for geoip processors#17584
crowdstrike.fdr: Add if conditions and opt-out config for geoip processors#17584kcreddy merged 4 commits intoelastic:mainfrom
Conversation
|
Pinging @elastic/security-service-integrations (Team:Security-Service Integrations) |
efd6
left a comment
There was a problem hiding this comment.
I'm not sure that this is a close; there was extension work suggested in the issue to add options to skip the observer.ip (and possibly the others) GeoIP look-up entirely. This needs to be discussed to determine whether we think it's a worthwhile thing to do, or whether the change here is enough.
| # IP Geolocation Lookup. | ||
| - geoip: | ||
| tag: geoip_observer_ip_into_observer_geo_0729ba64 | ||
| if: ctx.observer?.ip != null |
There was a problem hiding this comment.
Can we make sure that this is also included in the generator that @navnit-elastic is using for his work?
There was a problem hiding this comment.
@navnit-elastic LMK where your current generator lies, I can add this change to be included there.
@efd6, in 2f6b0c0, I added the flags which allows for disabling the |
efd6
left a comment
There was a problem hiding this comment.
LGTM after changelog addition.
💚 Build Succeeded
History
cc @kcreddy |
|
Package crowdstrike - 3.6.0 containing this change is available at https://epr.elastic.co/package/crowdstrike/3.6.0/ |
…ssors (#17584) Avoid unnecessary geoip processor invocations when IP fields are absent. Without an "if" guard, each geoip processor is still entered on every document — triggering a database validity check[1] that traverses cluster state metadata on every call — before discovering the field is missing and returning early. Adding "if: ctx.<field> != null" skips the processor entirely, avoiding this overhead for the majority of documents that lack the relevant IP. Additionally, expose three new configuration options — enable_geoip_observer_ip, enable_geoip_source_ip, and enable_geoip_destination_ip — that allow users to selectively disable GeoIP enrichment per IP field. All default to true for backward compatibility. New test sample log copied from existing sample, but with disabled new configuration options to verify "geo" fields are not populated. [1] https://github.com/elastic/elasticsearch/blob/70266af5b6e9bd5a40a918cb34fc5d1c3fe680aa/modules/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpProcessor.java#L103
Proposed commit message
Checklist
changelog.ymlfile.Related issues