Exemplos do Systems Manager usando o SDK para SAP ABAP - AWS SDK para SAP ABAP

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos do Systems Manager usando o SDK para SAP ABAP

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS SDK para SAP ABAP com Systems Manager.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar CreateDocument.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->createdocument( iv_name = iv_name iv_content = iv_content iv_documenttype = 'Command' ). MESSAGE 'Document created.' TYPE 'I'. CATCH /aws1/cx_ssmdocalreadyexists. MESSAGE 'Document already exists.' TYPE 'I'. CATCH /aws1/cx_ssminvaliddoccontent. MESSAGE 'Invalid document content.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a CreateDocumentreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar CreateMaintenanceWindow.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. oo_result = lo_ssm->createmaintenancewindow( iv_name = iv_name iv_schedule = iv_schedule iv_duration = iv_duration iv_cutoff = iv_cutoff iv_allowunassociatedtargets = iv_allow_unassociated_targets ). MESSAGE 'Maintenance window created.' TYPE 'I'. CATCH /aws1/cx_ssmresrclimitexcdex. MESSAGE 'Resource limit exceeded.' TYPE 'I'. ENDTRY.

O código de exemplo a seguir mostra como usar CreateOpsItem.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. oo_result = lo_ssm->createopsitem( iv_title = iv_title iv_source = iv_source iv_category = iv_category iv_severity = iv_severity iv_description = iv_description ). MESSAGE 'OpsItem created.' TYPE 'I'. CATCH /aws1/cx_ssmopsitemlimitexcdex. MESSAGE 'You have exceeded your open OpsItem limit.' TYPE 'I'. CATCH /aws1/cx_ssmopsitemalrdyexex. MESSAGE 'OpsItem already exists.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a CreateOpsItemreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar DeleteDocument.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->deletedocument( iv_name = iv_name ). MESSAGE 'Document deleted.' TYPE 'I'. CATCH /aws1/cx_ssminvaliddocument. MESSAGE 'Invalid document.' TYPE 'I'. CATCH /aws1/cx_ssmassocdinstances. MESSAGE 'Document has associated instances.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a DeleteDocumentreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar DeleteMaintenanceWindow.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->deletemaintenancewindow( iv_windowid = iv_window_id ). MESSAGE 'Maintenance window deleted.' TYPE 'I'. CATCH /aws1/cx_ssminternalservererr. MESSAGE 'Internal server error occurred.' TYPE 'I'. ENDTRY.

O código de exemplo a seguir mostra como usar DeleteOpsItem.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->deleteopsitem( iv_opsitemid = iv_ops_item_id ). MESSAGE 'OpsItem deleted.' TYPE 'I'. CATCH /aws1/cx_ssmopsiteminvparamex. MESSAGE 'Invalid OpsItem parameter.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a DeleteOpsItemreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar DescribeDocument.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. DATA(lo_result) = lo_ssm->describedocument( iv_name = iv_name ). DATA(lo_document) = lo_result->get_document( ). IF lo_document IS BOUND. rv_status = lo_document->get_status( ). MESSAGE |Document status: { rv_status }| TYPE 'I'. ENDIF. CATCH /aws1/cx_ssminvaliddocument. MESSAGE 'Invalid document.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a DescribeDocumentreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar DescribeOpsItems.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. " Create filter for OpsItem ID DATA(lt_filters) = VALUE /aws1/cl_ssmopsitemfilter=>tt_opsitemfilters( ( NEW /aws1/cl_ssmopsitemfilter( iv_key = 'OpsItemId' it_values = VALUE /aws1/cl_ssmopsitemfiltvals_w=>tt_opsitemfiltervalues( ( NEW /aws1/cl_ssmopsitemfiltvals_w( iv_value = iv_ops_item_id ) ) ) iv_operator = 'Equal' ) ) ). " Use paginator to get all results DATA(lo_paginator) = lo_ssm->get_paginator( ). DATA(lo_iterator) = lo_paginator->describeopsitems( it_opsitemfilters = lt_filters ). rv_found = abap_false. WHILE lo_iterator->has_next( ). DATA(lo_result) = CAST /aws1/cl_ssmdescropsitemsrsp( lo_iterator->get_next( ) ). LOOP AT lo_result->get_opsitemsummaries( ) INTO DATA(lo_item). DATA(lv_title) = lo_item->get_title( ). DATA(lv_status) = lo_item->get_status( ). MESSAGE |The OpsItem title is { lv_title } and the status is { lv_status }| TYPE 'I'. rv_found = abap_true. ENDLOOP. ENDWHILE. CATCH /aws1/cx_ssminternalservererr. MESSAGE 'Internal server error occurred.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a DescribeOpsItemsreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar ListCommandInvocations.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. " Use paginator to get all results DATA(lo_paginator) = lo_ssm->get_paginator( ). DATA(lo_iterator) = lo_paginator->listcommandinvocations( iv_instanceid = iv_instance_id ). DATA lv_count TYPE i VALUE 0. WHILE lo_iterator->has_next( ). DATA(lo_result) = CAST /aws1/cl_ssmlistcmdinvcsresult( lo_iterator->get_next( ) ). LOOP AT lo_result->get_commandinvocations( ) INTO DATA(lo_invocation). lv_count = lv_count + 1. DATA(lv_requested_datetime) = lo_invocation->get_requesteddatetime( ). MESSAGE |Command invocation requested at: { lv_requested_datetime }| TYPE 'I'. ENDLOOP. ENDWHILE. MESSAGE |{ lv_count } command invocation(s) found for instance { iv_instance_id }.| TYPE 'I'. CATCH /aws1/cx_ssminvalidinstanceid. MESSAGE 'Invalid instance ID.' TYPE 'I'. CATCH /aws1/cx_ssminvalidcommandid. MESSAGE 'Invalid command ID.' TYPE 'I'. ENDTRY.

O código de exemplo a seguir mostra como usar SendCommand.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. DATA(lo_result) = lo_ssm->sendcommand( it_instanceids = it_instance_ids iv_documentname = iv_document_name iv_timeoutseconds = 3600 ). DATA(lo_command) = lo_result->get_command( ). IF lo_command IS BOUND. rv_command_id = lo_command->get_commandid( ). MESSAGE 'Command sent successfully.' TYPE 'I'. ENDIF. CATCH /aws1/cx_ssminvaliddocument. MESSAGE 'Invalid document.' TYPE 'I'. CATCH /aws1/cx_ssminvalidinstanceid. MESSAGE 'Invalid instance ID.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a SendCommandreferência da API AWS SDK for SAP ABAP.

O código de exemplo a seguir mostra como usar UpdateMaintenanceWindow.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->updatemaintenancewindow( iv_windowid = iv_window_id iv_name = iv_name iv_enabled = iv_enabled iv_schedule = iv_schedule iv_duration = iv_duration iv_cutoff = iv_cutoff iv_allowunassociatedtargets = iv_allow_unassociated_targets ). MESSAGE 'Maintenance window updated.' TYPE 'I'. CATCH /aws1/cx_ssmdoesnotexistex. MESSAGE 'Maintenance window does not exist.' TYPE 'I'. ENDTRY.

O código de exemplo a seguir mostra como usar UpdateOpsItem.

SDK para SAP ABAP
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Code Examples Repository.

TRY. lo_ssm->updateopsitem( iv_opsitemid = iv_ops_item_id iv_title = iv_title iv_description = iv_description iv_status = iv_status ). MESSAGE 'OpsItem updated.' TYPE 'I'. CATCH /aws1/cx_ssmopsitemnotfoundex. MESSAGE 'OpsItem not found.' TYPE 'I'. CATCH /aws1/cx_ssmopsiteminvparamex. MESSAGE 'Invalid OpsItem parameter.' TYPE 'I'. ENDTRY.
  • Para obter detalhes da API, consulte a UpdateOpsItemreferência da API AWS SDK for SAP ABAP.