/AWS1/IF_OSI=>CREATEPIPELINE()
¶
About CreatePipeline¶
Creates an OpenSearch Ingestion pipeline. For more information, see Creating Amazon OpenSearch Ingestion pipelines.
Method Signature¶
METHODS /AWS1/IF_OSI~CREATEPIPELINE
IMPORTING
!IV_PIPELINENAME TYPE /AWS1/OSIPIPELINENAME OPTIONAL
!IV_MINUNITS TYPE /AWS1/OSIPIPELINEUNITS OPTIONAL
!IV_MAXUNITS TYPE /AWS1/OSIPIPELINEUNITS OPTIONAL
!IV_PIPELINECONFIGURATIONBODY TYPE /AWS1/OSIPIPELINECONFBODY OPTIONAL
!IO_LOGPUBLISHINGOPTIONS TYPE REF TO /AWS1/CL_OSILOGPUBINGOPTIONS OPTIONAL
!IO_VPCOPTIONS TYPE REF TO /AWS1/CL_OSIVPCOPTIONS OPTIONAL
!IO_BUFFEROPTIONS TYPE REF TO /AWS1/CL_OSIBUFFEROPTIONS OPTIONAL
!IO_ENCRYPTIONATRESTOPTIONS TYPE REF TO /AWS1/CL_OSIENCATRESTOPTIONS OPTIONAL
!IT_TAGS TYPE /AWS1/CL_OSITAG=>TT_TAGLIST OPTIONAL
!IV_PIPELINEROLEARN TYPE /AWS1/OSIPIPELINEROLEARN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_osicreateplinresponse
RAISING
/AWS1/CX_OSIACCESSDENIEDEX
/AWS1/CX_OSIDISABLEDOPEX
/AWS1/CX_OSIINTERNALEXCEPTION
/AWS1/CX_OSILIMITEXCEEDEDEX
/AWS1/CX_OSIRESRCALRDYEXISTSEX
/AWS1/CX_OSIRESOURCENOTFOUNDEX
/AWS1/CX_OSIVALIDATIONEX
/AWS1/CX_OSICLIENTEXC
/AWS1/CX_OSISERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_pipelinename
TYPE /AWS1/OSIPIPELINENAME
/AWS1/OSIPIPELINENAME
¶
The name of the OpenSearch Ingestion pipeline to create. Pipeline names are unique across the pipelines owned by an account within an Amazon Web Services Region.
iv_minunits
TYPE /AWS1/OSIPIPELINEUNITS
/AWS1/OSIPIPELINEUNITS
¶
The minimum pipeline capacity, in Ingestion Compute Units (ICUs).
iv_maxunits
TYPE /AWS1/OSIPIPELINEUNITS
/AWS1/OSIPIPELINEUNITS
¶
The maximum pipeline capacity, in Ingestion Compute Units (ICUs).
iv_pipelineconfigurationbody
TYPE /AWS1/OSIPIPELINECONFBODY
/AWS1/OSIPIPELINECONFBODY
¶
The pipeline configuration in YAML format. The command accepts the pipeline configuration as a string or within a .yaml file. If you provide the configuration as a string, each new line must be escaped with
\n
.
Optional arguments:¶
io_logpublishingoptions
TYPE REF TO /AWS1/CL_OSILOGPUBINGOPTIONS
/AWS1/CL_OSILOGPUBINGOPTIONS
¶
Key-value pairs to configure log publishing.
io_vpcoptions
TYPE REF TO /AWS1/CL_OSIVPCOPTIONS
/AWS1/CL_OSIVPCOPTIONS
¶
Container for the values required to configure VPC access for the pipeline. If you don't specify these values, OpenSearch Ingestion creates the pipeline with a public endpoint.
io_bufferoptions
TYPE REF TO /AWS1/CL_OSIBUFFEROPTIONS
/AWS1/CL_OSIBUFFEROPTIONS
¶
Key-value pairs to configure persistent buffering for the pipeline.
io_encryptionatrestoptions
TYPE REF TO /AWS1/CL_OSIENCATRESTOPTIONS
/AWS1/CL_OSIENCATRESTOPTIONS
¶
Key-value pairs to configure encryption for data that is written to a persistent buffer.
it_tags
TYPE /AWS1/CL_OSITAG=>TT_TAGLIST
TT_TAGLIST
¶
List of tags to add to the pipeline upon creation.
iv_pipelinerolearn
TYPE /AWS1/OSIPIPELINEROLEARN
/AWS1/OSIPIPELINEROLEARN
¶
The Amazon Resource Name (ARN) of the IAM role that grants the pipeline permission to access Amazon Web Services resources.
RETURNING¶
oo_output
TYPE REF TO /aws1/cl_osicreateplinresponse
/AWS1/CL_OSICREATEPLINRESPONSE
¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->createpipeline(
io_bufferoptions = new /aws1/cl_osibufferoptions( ABAP_TRUE )
io_encryptionatrestoptions = new /aws1/cl_osiencatrestoptions( |string| )
io_logpublishingoptions = new /aws1/cl_osilogpubingoptions(
io_cloudwatchlogdestination = new /aws1/cl_osicloudwatchlogdst( |string| )
iv_isloggingenabled = ABAP_TRUE
)
io_vpcoptions = new /aws1/cl_osivpcoptions(
io_vpcattachmentoptions = new /aws1/cl_osivpcattachmentopts(
iv_attachtovpc = ABAP_TRUE
iv_cidrblock = |string|
)
it_securitygroupids = VALUE /aws1/cl_osisecuritygroupids_w=>tt_securitygroupids(
( new /aws1/cl_osisecuritygroupids_w( |string| ) )
)
it_subnetids = VALUE /aws1/cl_osisubnetids_w=>tt_subnetids(
( new /aws1/cl_osisubnetids_w( |string| ) )
)
iv_vpcendpointmanagement = |string|
)
it_tags = VALUE /aws1/cl_ositag=>tt_taglist(
(
new /aws1/cl_ositag(
iv_key = |string|
iv_value = |string|
)
)
)
iv_maxunits = 123
iv_minunits = 123
iv_pipelineconfigurationbody = |string|
iv_pipelinename = |string|
iv_pipelinerolearn = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_pipeline = lo_result->get_pipeline( ).
IF lo_pipeline IS NOT INITIAL.
lv_string = lo_pipeline->get_pipelinename( ).
lv_string = lo_pipeline->get_pipelinearn( ).
lv_integer = lo_pipeline->get_minunits( ).
lv_integer = lo_pipeline->get_maxunits( ).
lv_pipelinestatus = lo_pipeline->get_status( ).
lo_pipelinestatusreason = lo_pipeline->get_statusreason( ).
IF lo_pipelinestatusreason IS NOT INITIAL.
lv_string = lo_pipelinestatusreason->get_description( ).
ENDIF.
lv_string = lo_pipeline->get_pipelineconfbody( ).
lv_timestamp = lo_pipeline->get_createdat( ).
lv_timestamp = lo_pipeline->get_lastupdatedat( ).
LOOP AT lo_pipeline->get_ingestendpointurls( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_string = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
lo_logpublishingoptions = lo_pipeline->get_logpublishingoptions( ).
IF lo_logpublishingoptions IS NOT INITIAL.
lv_boolean = lo_logpublishingoptions->get_isloggingenabled( ).
lo_cloudwatchlogdestinatio = lo_logpublishingoptions->get_cloudwatchlogdestination( ).
IF lo_cloudwatchlogdestinatio IS NOT INITIAL.
lv_loggroup = lo_cloudwatchlogdestinatio->get_loggroup( ).
ENDIF.
ENDIF.
LOOP AT lo_pipeline->get_vpcendpoints( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_string = lo_row_3->get_vpcendpointid( ).
lv_string = lo_row_3->get_vpcid( ).
lo_vpcoptions = lo_row_3->get_vpcoptions( ).
IF lo_vpcoptions IS NOT INITIAL.
LOOP AT lo_vpcoptions->get_subnetids( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_subnetid = lo_row_5->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_vpcoptions->get_securitygroupids( ) into lo_row_6.
lo_row_7 = lo_row_6.
IF lo_row_7 IS NOT INITIAL.
lv_securitygroupid = lo_row_7->get_value( ).
ENDIF.
ENDLOOP.
lo_vpcattachmentoptions = lo_vpcoptions->get_vpcattachmentoptions( ).
IF lo_vpcattachmentoptions IS NOT INITIAL.
lv_boolean = lo_vpcattachmentoptions->get_attachtovpc( ).
lv_cidrblock = lo_vpcattachmentoptions->get_cidrblock( ).
ENDIF.
lv_vpcendpointmanagement = lo_vpcoptions->get_vpcendpointmanagement( ).
ENDIF.
ENDIF.
ENDLOOP.
lo_bufferoptions = lo_pipeline->get_bufferoptions( ).
IF lo_bufferoptions IS NOT INITIAL.
lv_boolean = lo_bufferoptions->get_persistentbufferenabled( ).
ENDIF.
lo_encryptionatrestoptions = lo_pipeline->get_encryptionatrestoptions( ).
IF lo_encryptionatrestoptions IS NOT INITIAL.
lv_kmskeyarn = lo_encryptionatrestoptions->get_kmskeyarn( ).
ENDIF.
lv_string = lo_pipeline->get_vpcendpointservice( ).
LOOP AT lo_pipeline->get_servicevpcendpoints( ) into lo_row_8.
lo_row_9 = lo_row_8.
IF lo_row_9 IS NOT INITIAL.
lv_vpcendpointservicename = lo_row_9->get_servicename( ).
lv_string = lo_row_9->get_vpcendpointid( ).
ENDIF.
ENDLOOP.
LOOP AT lo_pipeline->get_destinations( ) into lo_row_10.
lo_row_11 = lo_row_10.
IF lo_row_11 IS NOT INITIAL.
lv_string = lo_row_11->get_servicename( ).
lv_string = lo_row_11->get_endpoint( ).
ENDIF.
ENDLOOP.
LOOP AT lo_pipeline->get_tags( ) into lo_row_12.
lo_row_13 = lo_row_12.
IF lo_row_13 IS NOT INITIAL.
lv_tagkey = lo_row_13->get_key( ).
lv_tagvalue = lo_row_13->get_value( ).
ENDIF.
ENDLOOP.
lv_pipelinerolearn = lo_pipeline->get_pipelinerolearn( ).
ENDIF.
ENDIF.