[PingDirectory][Http Access] Add Http Access data stream#19467
[PingDirectory][Http Access] Add Http Access data stream#19467muskan-agarwal26 wants to merge 2 commits into
Conversation
Elastic Docs Style Checker (Vale)Summary: 1 warning, 1 suggestion found
|
| File | Line | Rule | Message |
|---|---|---|---|
| packages/ping_directory/data_stream/http_access/fields/fields.yml | 6 | Elastic.Latinisms | Latin terms and abbreviations are a common source of confusion. Use 'for example' instead of 'e.g'. |
💡 Suggestions (1): Optional style improvements. Apply when helpful.
| File | Line | Rule | Message |
|---|---|---|---|
| packages/ping_directory/changelog.yml | 1 | Elastic.Versions | Use 'later versions' instead of 'newer versions' when referring to versions. |
The Vale linter checks documentation changes against the Elastic Docs style guide. To use Vale locally or report issues, refer to Elastic style guide for Vale.
|
✅ All changelog entries have the correct PR link. |
🚀 Benchmarks reportTo see the full report comment with |
💚 Build Succeeded
|
| - set: | ||
| field: event.duration | ||
| tag: set_event_duration_from_http_access_etime | ||
| copy_from: ping_directory.http_access.etime | ||
| ignore_empty_value: true |
There was a problem hiding this comment.
This needs to be scaled. The API returns etime in milliseconds (ref).
| tag: append_error_message_for_convert_responseContentLength_to_long | ||
| value: 'Processor {{{_ingest.on_failure_processor_type}}} with tag {{{_ingest.on_failure_processor_tag}}} in pipeline {{{_ingest.on_failure_pipeline}}} failed with message: {{{_ingest.on_failure_message}}}' | ||
| - convert: | ||
| field: http.response.status_code |
There was a problem hiding this comment.
This field can be used to populate event.outcome.
| field: event.original | ||
| tag: parse_http_access | ||
| patterns: | ||
| - '\[(?<ping_directory.http_access.timestamp>\d{2}\/[A-Za-z]{3}\/\d{4}:\d{2}:\d{2}:\d{2}\.\d{3}) (?<ping_directory.http_access.timezone>[+-]\d{4})\] %{WORD:ping_directory.http_access.type}(?: instanceName="%{DATA:observer.name}")?(?: threadID=%{NUMBER:ping_directory.http_access.thread_id:long})?(?: requestID=%{NUMBER:ping_directory.http_access.request_id})?(?: correlationID="%{DATA:ping_directory.http_access.correlation_id}")?(?: from="%{IP:client.ip}:%{NUMBER:client.port:long}")?(?: method="%{WORD:http.request.method}")?(?: url="%{DATA:url.full}")?(?<_tmp_request_headers>(?: requestHeader="[^"]*")*)(?: authorizationType="%{DATA:ping_directory.http_access.authorization_type}")?(?: requestContentType="%{DATA:http.request.mime_type}")?(?: requestContentLength=%{NUMBER:http.request.bytes:long})?(?: statusCode=%{NUMBER:http.response.status_code:long})?(?: etime=%{NUMBER:ping_directory.http_access.etime:float})?(?: responseContentLength=%{NUMBER:http.response.bytes:long})?(?<_tmp_response_headers>(?: responseHeader="[^"]*")*)(?: responseContentType="%{DATA:http.response.mime_type}")?(?: redirectURI="%{DATA:ping_directory.http_access.redirect_uri}")?' |
There was a problem hiding this comment.
- Do a
uri_partson theurl.fullfrom here. Also setnetwork.protocol` from the scheme. - Do a
geoipenrichment ofclient.ip. - There are converts implied here, so the
converts that follow for these fields are not required for the:longand:floatmatch specifiers.
| copy_from: ping_directory.http_access.request_header.referer | ||
| ignore_empty_value: true | ||
| - set: | ||
| field: user_agent.original |
There was a problem hiding this comment.
Map this to user_agent.* fields with a user_agent processor.
| ignore_empty_value: true | ||
| - append: | ||
| field: trace.id | ||
| tag: append_ping_directory_http_access_response_header_correlation_id_into_trace_id |
There was a problem hiding this comment.
Before, this was set. I'm pretty sure this is normalised to a scalar (there is not "array" expectation here).
| {{#if tz_offset}} | ||
| fields_under_root: true | ||
| fields: | ||
| _conf: | ||
| tz_offset: "{{tz_offset}}" | ||
| {{/if}} |
There was a problem hiding this comment.
This is not defined in a manifest.
| - name: paths | ||
| type: text | ||
| title: Paths | ||
| multi: true | ||
| required: true | ||
| show_user: true | ||
| description: A list of glob-based paths that will be crawled and fetched. |
There was a problem hiding this comment.
Is there a sensible default for this?
|
|
||
| ### Agent-based deployment | ||
|
|
||
| For more details, refer to the Elastic Agent installation instructions. -> For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md). You can install only one Elastic Agent per host. |
There was a problem hiding this comment.
| For more details, refer to the Elastic Agent installation instructions. -> For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md). You can install only one Elastic Agent per host. | |
| For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md). You can install only one Elastic Agent per host. |
|
|
||
| For more details, refer to the Elastic Agent installation instructions. -> For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md). You can install only one Elastic Agent per host. | ||
|
|
||
| Elastic Agent is required to stream data from the syslog or log file receiver and ship the data to Elastic, where the events will then be processed via the integration's ingest pipelines. |
There was a problem hiding this comment.
Do all of the visualisation in this dashboard have titles?
Proposed commit message
Checklist
changelog.ymlfile.How to test this PR locally
To test the PingDirectory package:
Related issues
Screenshots