-
Notifications
You must be signed in to change notification settings - Fork 115
Add community_id, fingerprint, and network_direction processors #3011
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
Changes from 5 commits
a7bb431
a24055b
e0cfc17
0ded54f
51f7537
56d8aa3
98ff04e
f24dc11
80f4a95
77e5e34
6b83892
c420d53
4982c5f
9439259
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -55,6 +55,13 @@ export class ProcessorContainer { | |
| * @doc_id ingest-circle-processor | ||
| */ | ||
| circle?: CircleProcessor | ||
| /** | ||
| * Computes the Community ID for network flow data as defined in the | ||
| * Community ID Specification. You can use a community ID to correlate network | ||
| * events related to a single flow. | ||
| * @doc_id community-id-processor | ||
| */ | ||
| community_id?: CommunityIDProcessor | ||
| /** | ||
| * Converts a field in the currently ingested document to a different type, such as converting a string to an integer. | ||
| * If the field value is an array, all members will be converted. | ||
|
|
@@ -106,6 +113,12 @@ export class ProcessorContainer { | |
| * @doc_id fail-processor | ||
| */ | ||
| fail?: FailProcessor | ||
| /** | ||
| * Computes a hash of the document’s content. You can use this hash for | ||
| * content fingerprinting. | ||
| * @doc_id fingerprint-processor | ||
| */ | ||
| fingerprint?: FingerprintProcessor | ||
| /** | ||
| * Runs an ingest processor on each element of an array or object. | ||
| * @doc_id foreach-processor | ||
|
|
@@ -169,6 +182,12 @@ export class ProcessorContainer { | |
| * @doc_id lowercase-processor | ||
| */ | ||
| lowercase?: LowercaseProcessor | ||
| /** | ||
| * Calculates the network direction given a source IP address, destination IP | ||
| * address, and a list of internal networks. | ||
| * @doc_id network-direction-processor | ||
| */ | ||
| network_direction?: NetworkDirectionProcessor | ||
| /** | ||
| * Executes another pipeline. | ||
| * @doc_id pipeline-processor | ||
|
|
@@ -528,13 +547,66 @@ export class CircleProcessor extends ProcessorBase { | |
| target_field?: Field | ||
| } | ||
|
|
||
| export class CommunityIDProcessor extends ProcessorBase { | ||
| /** | ||
| * Field containing the source IP address. | ||
| */ | ||
| source_ip?: string | ||
| /** | ||
| * Field containing the source port. | ||
| */ | ||
| source_port?: string | ||
| /** | ||
| * Field containing the destination IP address. | ||
| */ | ||
| destination_ip?: string | ||
| /** | ||
| * Field containing the destination port. | ||
| */ | ||
| destination_port?: string | ||
| /** | ||
| * Field containing the IANA number. | ||
| */ | ||
| iana_number?: string | ||
| /** | ||
| * Field containing the ICMP type. | ||
| */ | ||
| icmp_type?: string | ||
| /** | ||
| * Field containing the ICMP code. | ||
| */ | ||
| icmp_code?: string | ||
| /** | ||
| * Field containing the transport protocol name or number. Used only when the | ||
| * iana_number field is not present. The following protocol names are currently | ||
| * supported: ICMP, IGMP, TCP, UDP, GRE, ICMP IPv6, EIGRP, OSPF, PIM, and SCTP. | ||
| */ | ||
| transport?: string | ||
flobernd marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| /** | ||
| * Output field for the community ID. | ||
| */ | ||
| target_field?: Field | ||
| /** | ||
| * Seed for the community ID hash. Must be between 0 and 65535 (inclusive). The | ||
| * seed can prevent hash collisions between network domains, such as a staging | ||
| * and production network that use the same addressing scheme. | ||
| */ | ||
| seed?: integer | ||
| /** | ||
| * If true and any required fields are missing, the processor quietly exits | ||
| * without modifying the document. | ||
| */ | ||
| ignore_missing?: boolean | ||
| } | ||
|
|
||
| export enum ConvertType { | ||
| integer, | ||
| long, | ||
| float, | ||
| double, | ||
| string, | ||
| float, | ||
| boolean, | ||
| ip, | ||
| string, | ||
| auto | ||
| } | ||
|
|
||
|
|
@@ -756,6 +828,33 @@ export class FailProcessor extends ProcessorBase { | |
| message: string | ||
| } | ||
|
|
||
| export class FingerprintProcessor extends ProcessorBase { | ||
| /** | ||
| * Array of fields to include in the fingerprint. For objects, the processor | ||
| * hashes both the field key and value. For other fields, the processor hashes | ||
| * only the field value. | ||
| */ | ||
| fields: string[] | ||
andrewkroh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| /** | ||
| * Output field for the fingerprint. | ||
| */ | ||
| target_field?: Field | ||
| /** | ||
| * Salt value for the hash function. | ||
| */ | ||
| salt?: string | ||
| /** | ||
| * The hash method used to compute the fingerprint. Must be one of MD5, SHA-1, | ||
| * SHA-256, SHA-512, or MurmurHash3. | ||
| */ | ||
| method?: string | ||
andrewkroh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| /** | ||
| * If true, the processor ignores any missing fields. If all fields are | ||
| * missing, the processor silently exits without modifying the document. | ||
| */ | ||
| ignore_missing?: boolean | ||
| } | ||
|
|
||
| export class ForeachProcessor extends ProcessorBase { | ||
| /** | ||
| * Field containing array or object values. | ||
|
|
@@ -1046,6 +1145,38 @@ export class LowercaseProcessor extends ProcessorBase { | |
| target_field?: Field | ||
| } | ||
|
|
||
| export class NetworkDirectionProcessor extends ProcessorBase { | ||
| /** | ||
| * Field containing the source IP address. | ||
| */ | ||
| source_ip?: string | ||
| /** | ||
| * Field containing the destination IP address. | ||
| */ | ||
| destination_ip?: string | ||
| /** | ||
| * Output field for the network direction. | ||
| */ | ||
| target_field?: Field | ||
| /** | ||
| * List of internal networks. Supports IPv4 and IPv6 addresses and ranges in | ||
| * CIDR notation. Also supports the named ranges listed below. These may be | ||
| * constructed with template snippets. Must specify only one of | ||
| * internal_networks or internal_networks_field. | ||
| */ | ||
| internal_networks: string[] | ||
|
||
| /** | ||
| * A field on the given document to read the internal_networks configuration | ||
| * from. | ||
| */ | ||
| internal_networks_field?: string | ||
andrewkroh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| /** | ||
| * If true and any required fields are missing, the processor quietly exits | ||
| * without modifying the document. | ||
| */ | ||
| ignore_missing?: boolean | ||
| } | ||
|
|
||
| export class PipelineProcessor extends ProcessorBase { | ||
| /** | ||
| * The name of the pipeline to execute. | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.