Class MetadataExtractionProcessor

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.kinesisfirehose.MetadataExtractionProcessor
All Implemented Interfaces:
IDataProcessor, software.amazon.jsii.JsiiSerializable

@Generated(value="jsii-pacmak/1.126.0 (build 206d44b)", date="2026-02-23T18:58:21.366Z") @Stability(Stable) public class MetadataExtractionProcessor extends software.amazon.jsii.JsiiObject implements IDataProcessor
The data processor for dynamic partitioning with inline parsing.

Example:

 Bucket bucket;
 S3Bucket s3Destination = S3Bucket.Builder.create(bucket)
         .dynamicPartitioning(DynamicPartitioningProps.builder().enabled(true).build())
         .processors(List.of(MetadataExtractionProcessor.jq16(Map.of(
                 "customer_id", ".customer_id",
                 "device", ".type.device",
                 "year", ".event_timestamp|strftime(\"%Y\")"))))
         .dataOutputPrefix("!{partitionKeyFromQuery:year}/!{partitionKeyFromQuery:device}/!{partitionKeyFromQuery:customer_id}/")
         .build();
 DeliveryStream.Builder.create(this, "DeliveryStream")
         .destination(s3Destination)
         .build();
 

See Also:
  • Constructor Details

    • MetadataExtractionProcessor

      protected MetadataExtractionProcessor(software.amazon.jsii.JsiiObjectRef objRef)
    • MetadataExtractionProcessor

      protected MetadataExtractionProcessor(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • MetadataExtractionProcessor

      @Stability(Stable) public MetadataExtractionProcessor(@NotNull MetadataExtractionProcessorOptions options, @NotNull List<String> keys)
      Parameters:
      options - This parameter is required.
      keys - This parameter is required.
  • Method Details

    • jq16

      @Stability(Stable) @NotNull public static MetadataExtractionProcessor jq16(@NotNull Map<String,String> query)
      Creates the inline parsing configuration with JQ 1.6 engine.

      Parameters:
      query - A map of partition key to jq expression. This parameter is required.
    • bind

      @Stability(Stable) @NotNull public DataProcessorConfig bind(@NotNull software.constructs.Construct scope, @NotNull DataProcessorBindOptions options)
      Binds this processor to a destination of a delivery stream.

      Implementers should use this method to grant processor invocation permissions to the provided stream and return the necessary configuration to register as a processor.

      Specified by:
      bind in interface IDataProcessor
      Parameters:
      scope - This parameter is required.
      options - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull public DataProcessorProps getProps()
      The constructor props of the DataProcessor.
      Specified by:
      getProps in interface IDataProcessor