elasticstack 0.12.1 published on Thursday, Oct 23, 2025 by elastic
elasticstack 0.12.1 published on Thursday, Oct 23, 2025 by elastic
Helper data source which can be used to create the configuration for a user agent processor. This processor extracts details from the user agent string a browser sends with its web requests. See: https://www.elastic.co/guide/en/elasticsearch/reference/current/user-agent-processor.html
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as elasticstack from "@pulumi/elasticstack";
const agent = elasticstack.getElasticsearchIngestProcessorUserAgent({
field: "agent",
});
const myIngestPipeline = new elasticstack.ElasticsearchIngestPipeline("myIngestPipeline", {processors: [agent.then(agent => agent.json)]});
import pulumi
import pulumi_elasticstack as elasticstack
agent = elasticstack.get_elasticsearch_ingest_processor_user_agent(field="agent")
my_ingest_pipeline = elasticstack.ElasticsearchIngestPipeline("myIngestPipeline", processors=[agent.json])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/elasticstack/elasticstack"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
agent, err := elasticstack.GetElasticsearchIngestProcessorUserAgent(ctx, &elasticstack.GetElasticsearchIngestProcessorUserAgentArgs{
Field: "agent",
}, nil)
if err != nil {
return err
}
_, err = elasticstack.NewElasticsearchIngestPipeline(ctx, "myIngestPipeline", &elasticstack.ElasticsearchIngestPipelineArgs{
Processors: pulumi.StringArray{
pulumi.String(agent.Json),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Elasticstack = Pulumi.Elasticstack;
return await Deployment.RunAsync(() =>
{
var agent = Elasticstack.GetElasticsearchIngestProcessorUserAgent.Invoke(new()
{
Field = "agent",
});
var myIngestPipeline = new Elasticstack.ElasticsearchIngestPipeline("myIngestPipeline", new()
{
Processors = new[]
{
agent.Apply(getElasticsearchIngestProcessorUserAgentResult => getElasticsearchIngestProcessorUserAgentResult.Json),
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.elasticstack.ElasticstackFunctions;
import com.pulumi.elasticstack.inputs.GetElasticsearchIngestProcessorUserAgentArgs;
import com.pulumi.elasticstack.ElasticsearchIngestPipeline;
import com.pulumi.elasticstack.ElasticsearchIngestPipelineArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var agent = ElasticstackFunctions.getElasticsearchIngestProcessorUserAgent(GetElasticsearchIngestProcessorUserAgentArgs.builder()
.field("agent")
.build());
var myIngestPipeline = new ElasticsearchIngestPipeline("myIngestPipeline", ElasticsearchIngestPipelineArgs.builder()
.processors(agent.applyValue(getElasticsearchIngestProcessorUserAgentResult -> getElasticsearchIngestProcessorUserAgentResult.json()))
.build());
}
}
resources:
myIngestPipeline:
type: elasticstack:ElasticsearchIngestPipeline
properties:
processors:
- ${agent.json}
variables:
agent:
fn::invoke:
function: elasticstack:getElasticsearchIngestProcessorUserAgent
arguments:
field: agent
Using getElasticsearchIngestProcessorUserAgent
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getElasticsearchIngestProcessorUserAgent(args: GetElasticsearchIngestProcessorUserAgentArgs, opts?: InvokeOptions): Promise<GetElasticsearchIngestProcessorUserAgentResult>
function getElasticsearchIngestProcessorUserAgentOutput(args: GetElasticsearchIngestProcessorUserAgentOutputArgs, opts?: InvokeOptions): Output<GetElasticsearchIngestProcessorUserAgentResult>def get_elasticsearch_ingest_processor_user_agent(extract_device_type: Optional[bool] = None,
field: Optional[str] = None,
ignore_missing: Optional[bool] = None,
properties: Optional[Sequence[str]] = None,
regex_file: Optional[str] = None,
target_field: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetElasticsearchIngestProcessorUserAgentResult
def get_elasticsearch_ingest_processor_user_agent_output(extract_device_type: Optional[pulumi.Input[bool]] = None,
field: Optional[pulumi.Input[str]] = None,
ignore_missing: Optional[pulumi.Input[bool]] = None,
properties: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
regex_file: Optional[pulumi.Input[str]] = None,
target_field: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetElasticsearchIngestProcessorUserAgentResult]func GetElasticsearchIngestProcessorUserAgent(ctx *Context, args *GetElasticsearchIngestProcessorUserAgentArgs, opts ...InvokeOption) (*GetElasticsearchIngestProcessorUserAgentResult, error)
func GetElasticsearchIngestProcessorUserAgentOutput(ctx *Context, args *GetElasticsearchIngestProcessorUserAgentOutputArgs, opts ...InvokeOption) GetElasticsearchIngestProcessorUserAgentResultOutput> Note: This function is named GetElasticsearchIngestProcessorUserAgent in the Go SDK.
public static class GetElasticsearchIngestProcessorUserAgent
{
public static Task<GetElasticsearchIngestProcessorUserAgentResult> InvokeAsync(GetElasticsearchIngestProcessorUserAgentArgs args, InvokeOptions? opts = null)
public static Output<GetElasticsearchIngestProcessorUserAgentResult> Invoke(GetElasticsearchIngestProcessorUserAgentInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetElasticsearchIngestProcessorUserAgentResult> getElasticsearchIngestProcessorUserAgent(GetElasticsearchIngestProcessorUserAgentArgs args, InvokeOptions options)
public static Output<GetElasticsearchIngestProcessorUserAgentResult> getElasticsearchIngestProcessorUserAgent(GetElasticsearchIngestProcessorUserAgentArgs args, InvokeOptions options)
fn::invoke:
function: elasticstack:index/getElasticsearchIngestProcessorUserAgent:getElasticsearchIngestProcessorUserAgent
arguments:
# arguments dictionaryThe following arguments are supported:
- Field string
- The field containing the user agent string.
- Extract
Device boolType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- Ignore
Missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - Properties List<string>
- Controls what properties are added to
target_field. - Regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - Target
Field string - The field that will be filled with the user agent details.
- Field string
- The field containing the user agent string.
- Extract
Device boolType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- Ignore
Missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - Properties []string
- Controls what properties are added to
target_field. - Regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - Target
Field string - The field that will be filled with the user agent details.
- field String
- The field containing the user agent string.
- extract
Device BooleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing Boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties List<String>
- Controls what properties are added to
target_field. - regex
File String - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field String - The field that will be filled with the user agent details.
- field string
- The field containing the user agent string.
- extract
Device booleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties string[]
- Controls what properties are added to
target_field. - regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field string - The field that will be filled with the user agent details.
- field str
- The field containing the user agent string.
- extract_
device_ booltype - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore_
missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties Sequence[str]
- Controls what properties are added to
target_field. - regex_
file str - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target_
field str - The field that will be filled with the user agent details.
- field String
- The field containing the user agent string.
- extract
Device BooleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing Boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties List<String>
- Controls what properties are added to
target_field. - regex
File String - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field String - The field that will be filled with the user agent details.
getElasticsearchIngestProcessorUserAgent Result
The following output properties are available:
- Field string
- The field containing the user agent string.
- Id string
- Internal identifier of the resource.
- Json string
- JSON representation of this data source.
- Extract
Device boolType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- Ignore
Missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - Properties List<string>
- Controls what properties are added to
target_field. - Regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - Target
Field string - The field that will be filled with the user agent details.
- Field string
- The field containing the user agent string.
- Id string
- Internal identifier of the resource.
- Json string
- JSON representation of this data source.
- Extract
Device boolType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- Ignore
Missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - Properties []string
- Controls what properties are added to
target_field. - Regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - Target
Field string - The field that will be filled with the user agent details.
- field String
- The field containing the user agent string.
- id String
- Internal identifier of the resource.
- json String
- JSON representation of this data source.
- extract
Device BooleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing Boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties List<String>
- Controls what properties are added to
target_field. - regex
File String - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field String - The field that will be filled with the user agent details.
- field string
- The field containing the user agent string.
- id string
- Internal identifier of the resource.
- json string
- JSON representation of this data source.
- extract
Device booleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties string[]
- Controls what properties are added to
target_field. - regex
File string - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field string - The field that will be filled with the user agent details.
- field str
- The field containing the user agent string.
- id str
- Internal identifier of the resource.
- json str
- JSON representation of this data source.
- extract_
device_ booltype - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore_
missing bool - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties Sequence[str]
- Controls what properties are added to
target_field. - regex_
file str - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target_
field str - The field that will be filled with the user agent details.
- field String
- The field containing the user agent string.
- id String
- Internal identifier of the resource.
- json String
- JSON representation of this data source.
- extract
Device BooleanType - Extracts device type from the user agent string on a best-effort basis. Supported only starting from Elasticsearch version 8.0
- ignore
Missing Boolean - If
trueandfielddoes not exist or isnull, the processor quietly exits without modifying the document. - properties List<String>
- Controls what properties are added to
target_field. - regex
File String - The name of the file in the
config/ingest-user-agentdirectory containing the regular expressions for parsing the user agent string. - target
Field String - The field that will be filled with the user agent details.
Package Details
- Repository
- elasticstack elastic/terraform-provider-elasticstack
- License
- Notes
- This Pulumi package is based on the
elasticstackTerraform Provider.
elasticstack 0.12.1 published on Thursday, Oct 23, 2025 by elastic
