Delete Index Objects
Deletes TenXTemplate Filters when a storage object (e.g., S3) is removed. Runs as a deletion trigger to clean up associated index objects.
Configuration
To configure the Delete index objects module, Edit these settings.
Below is the default configuration from: delete/config.yaml.
ewogICJ0eXBlIiA6ICJvYmplY3QiLAogICJwcm9wZXJ0aWVzIiA6IHsKICAgICJpbmNsdWRlIiA6IHsKICAgICAgInR5cGUiIDogInN0cmluZyIKICAgIH0sCiAgICAidGVueCIgOiB7CiAgICAgICJ0eXBlIiA6ICJzdHJpbmciCiAgICB9LAogICAgImluZGV4RGVsZXRlIiA6IHsKICAgICAgInR5cGUiIDogImFycmF5IiwKICAgICAgIml0ZW1zIiA6IHsKICAgICAgICAidHlwZSIgOiAib2JqZWN0IiwKICAgICAgICAiYWRkaXRpb25hbFByb3BlcnRpZXMiIDogZmFsc2UsCiAgICAgICAgInByb3BlcnRpZXMiIDogewogICAgICAgICAgIm9iamVjdFN0b3JhZ2VOYW1lIiA6IHsKICAgICAgICAgICAgInR5cGUiIDogWwogICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICJudWxsIgogICAgICAgICAgICBdLAogICAgICAgICAgICAibWFya2Rvd25EZXNjcmlwdGlvbiIgOiAiT2JqZWN0IHN0b3JhZ2UgbG9naWNhbCBuYW1lXG5cbklkZW50aWZpZXMgdGhlIFtvYmplY3Qgc3RvcmFnZV0oaHR0cHM6Ly9kb2MubG9nMTB4LmNvbS9ydW4vaW5wdXQvb2JqZWN0U3RvcmFnZSNvYmplY3RzdG9yYWdlY2Nlc3NjbGFzc25hbWUpIGZyb20gd2hpY2ggdG8gZGVsZXRlIHRoZSB0YXJnZXQgaW5kZXggb2JqZWN0cyAoZS5nLiwgJ0FXUycpLiIKICAgICAgICAgIH0sCiAgICAgICAgICAib2JqZWN0U3RvcmFnZUFyZ3MiIDogewogICAgICAgICAgICAidHlwZSIgOiBbCiAgICAgICAgICAgICAgImFycmF5IiwKICAgICAgICAgICAgICAibnVsbCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm1hcmtkb3duRGVzY3JpcHRpb24iIDogIkN1c3RvbSBvYmplY3Qgc3RvcmFnZSBhcmdzXG5cbkN1c3RvbSBhcmd1bWVudHMgcGFzc2VkIGFzIGEgbWFwIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiB0aGUgdW5kZXJseWluZyBbb2JqZWN0IHN0b3JhZ2VdKGh0dHBzOi8vZG9jLmxvZzEweC5jb20vcnVuL2lucHV0L29iamVjdFN0b3JhZ2UvaW5kZXgvZGVsZXRlLyNxdWVyeW9iamVjdG9iamVjdHN0b3JhZ2VuYW1lKS4gVGhpcyBsaXN0IGlzIGV4cGVjdGVkIHRvIGhvbGQgcGFpcnMgb2Yga2V5IHZhbHVlcyAoZS5nLiwgYXJnczogW2tleTEsIHZhbHVlMSwga2V5MiwgdmFsdWUyXSkiLAogICAgICAgICAgICAiaXRlbXMiIDogewogICAgICAgICAgICAgICJ0eXBlIiA6ICJzdHJpbmciCiAgICAgICAgICAgIH0KICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGFpbmVyIiA6IHsKICAgICAgICAgICAgInR5cGUiIDogWwogICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICJudWxsIgogICAgICAgICAgICBdLAogICAgICAgICAgICAibWFya2Rvd25EZXNjcmlwdGlvbiIgOiAiT2JqZWN0IHN0b3JhZ2UgY29udGFpbmVyIGNvbnRhaW5pbmcgaW5kZXggb2JqZWN0c1xuXG5TcGVjaWZpZXMgdGhlIG9iamVjdCBzdG9yYWdlIGNvbnRhaW5lciAoZS5nLiwgQVdTIFMzIGJ1Y2tldCkgbmFtZSBmcm9tIHdoaWNoIHRvIGRlbGV0ZSBbVGVuWFRlbXBsYXRlIEZpbHRlcnNdKGh0dHBzOi8vZG9jLmxvZzEweC5jb20vcnVuL2lucHV0L29iamVjdFN0b3JhZ2UvaW5kZXgvI3Rlbnh0ZW1wbGF0ZS1maWx0ZXJzKSIKICAgICAgICAgIH0sCiAgICAgICAgICAidGFyZ2V0IiA6IHsKICAgICAgICAgICAgInR5cGUiIDogWwogICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICJudWxsIgogICAgICAgICAgICBdLAogICAgICAgICAgICAibWFya2Rvd25EZXNjcmlwdGlvbiIgOiAiTG9naWNhbCBuYW1lIGlkZW50aWZ5aW5nIHRoZSBvcmlnaW4gb2YgJ2luZGV4RGVsZXRlT2JqZWN0J1xuXG5TcGVjaWZpZXMgYSBsb2dpY2FsIG5hbWUgdG8gZGVsZXRlIFtUZW5YVGVtcGxhdGUgRmlsdGVyc10oaHR0cHM6Ly9kb2MubG9nMTB4LmNvbS9ydW4vaW5wdXQvb2JqZWN0U3RvcmFnZS9pbmRleC8jVGVuWFRlbXBsYXRlLWZpbHRlcnMpIHByb2R1Y2VkIGZvciBbaW5kZXhEZWxldGVUYXJnZXRPYmplY3RdKGh0dHBzOi8vZG9jLmxvZzEweC5jb20vcnVuL2lucHV0L29iamVjdFN0b3JhZ2UvaW5kZXgvZGVsZXRlLyNpbmRleGRlbGV0ZXRhcmdldE9iamVjdCkgdW5kZXIuIFRoaXMgbmFtZSBjb21tb25seSBzcGVjaWZpZXMgdGhlIGFwcCB3aGljaCBnZW5lcmF0ZWQgdGhlIGV2ZW50cyBlbmNsb3NlZCB3aXRoaW4gdGhpcyBibG9iIChlLmcuICdhY21lLWNsaWVudCcpLiIKICAgICAgICAgIH0sCiAgICAgICAgICAib2JqZWN0IiA6IHsKICAgICAgICAgICAgInR5cGUiIDogWwogICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICJudWxsIgogICAgICAgICAgICBdLAogICAgICAgICAgICAibWFya2Rvd25EZXNjcmlwdGlvbiIgOiAiVGhlIHRhcmdldCBvYmplY3Qgd2hvc2UgaW5kZXggb2JqZWN0cyB0byBkZWxldGUgZnJvbSBzdG9yYWdlXG5cblNldHMgdGhlIG5hbWUgb2YgdGhlIG9iamVjdCAoZS5nLiwgbG9nIGZpbGUpIHdob3NlIGFzc29jaWF0ZWQgaW5kZXggb2JqZWN0cyB0byBkZWxldGUgZnJvbSBbaW5kZXhEZWxldGVDb250YWluZXJdKGh0dHBzOi8vZG9jLmxvZzEweC5jb20vcnVuL2lucHV0L29iamVjdFN0b3JhZ2UvaW5kZXgvZGVsZXRlLyNpbmRleGRlbGV0ZWNvbnRhaW5lcikiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAicmVxdWlyZWQiIDogWwogICAgICAgICAgIm9iamVjdFN0b3JhZ2VOYW1lIiwKICAgICAgICAgICJjb250YWluZXIiLAogICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICAib2JqZWN0IgogICAgICAgIF0KICAgICAgfQogICAgfQogIH0sCiAgImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiA6IGZhbHNlCn0=
# 🔟❎ 'run' Object storage delete index objects configuration
# Configure query AWS S3 bucket settings
# To learn more see https://doc.log10x.com/run/input/objectStorage/index/delete
# Set the 10x pipeline to 'run'
tenx: run
# =============================== Dependencies ================================
include: run/modules/input/objectStorage/index/delete
# ============================= AWS S3 Query Options ==========================
indexDelete:
# 'objectStorage' is set to target AWS S3.
# To learn more about configuring Object storage, see: https://doc.log10x.com/run/input/objectStorage
# AWS Authentication is made via the default provider credentials chain:
# https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/auth/credentials/DefaultCredentialsProvider.html
# AWS Region selection is made via the default region provider chain:
# https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/regions/providers/DefaultAwsRegionProviderChain.html
- objectStorageName: AWS
# 'objectStorageArgs' provides arguments to the constructor of the class defined by 'objectStorageName'.
# Setting [invoke, sqs] configures the storage accessor to route pipeline invocations via SQS messages.
objectStorageArgs: [invoke, sqs]
# 'container' specifies the container in which index objects created by the 'index' module reside.
container: $=TenXString.jsonpath(TenXEnv.get("TENX_LAMBDA_INPUT"), "$.Records[0].s3.bucket.name")
# 'target' sets a logical name under which output index objects reside.
# This commonly refers to the name of the application/service which generated
# 'targetObject' (e.g., 'my-service', 'my-broker')
target: app
# 'targetObject' points to the blob (e.g., log file) within being deleted
object: $=TenXString.jsonpath(TenXEnv.get("TENX_LAMBDA_INPUT"), "$.Records[0].s3.object.key")
Options
Specify the options below to configure multiple Delete index objects:
| Name | Description | Category |
|---|---|---|
| indexDeleteObjectStorageName | Object storage logical name | General |
| indexDeleteContainer | Object storage container containing index objects | General |
| indexDeleteObject | The target object whose index objects to delete from storage | General |
| indexDeleteObjectStorageArgs | Custom object storage args | Advanced |
| indexDeleteTarget | Logical name identifying the origin of 'indexDeleteObject' | Output |
General
indexDeleteObjectStorageName
Object storage logical name.
| Type | Required | Category |
|---|---|---|
| String | ✔ | General |
Identifies the object storage from which to delete the target index objects (e.g., 'AWS').
indexDeleteContainer
Object storage container containing index objects.
| Type | Required | Category |
|---|---|---|
| String | ✔ | General |
Specifies the object storage container (e.g., AWS S3 bucket) name from which to delete TenXTemplate Filters.
indexDeleteObject
The target object whose index objects to delete from storage.
| Type | Required | Category |
|---|---|---|
| String | ✔ | General |
Sets the name of the object (e.g., log file) whose associated index objects to delete from indexDeleteContainer.
Advanced
indexDeleteObjectStorageArgs
Custom object storage args.
| Type | Default | Category |
|---|---|---|
| List | [] | Advanced |
Custom arguments passed as a map to the constructor of the underlying object storage. This list is expected to hold pairs of key values (e.g., args: [key1, value1, key2, value2]).
Output
indexDeleteTarget
Logical name identifying the origin of 'indexDeleteObject'.
| Type | Required | Category |
|---|---|---|
| String | ✔ | Output |
Specifies a logical name to delete TenXTemplate Filters produced for indexDeleteTargetObject under. This name commonly specifies the app which generated the events enclosed within this blob (e.g. 'acme-client').
This module is defined in delete/module.yaml.