Python
 Computer >> コンピューター >  >> プログラミング >> Python

Boto3を使用してAWSGlueDataカタログからジョブに関連付けられたすべてのトリガーの詳細を取得する方法


この記事では、ユーザーがAWSGlueデータカタログからジョブに関連付けられたすべてのトリガーの詳細を取得する方法を説明します。

ジョブに関連付けられているすべてのトリガーの詳細を取得します-'employee_details'

問題の説明: boto3を使用する ジョブに関連付けられているすべてのトリガーの詳細を取得するためのPythonのライブラリ。

この問題を解決するためのアプローチ/アルゴリズム

  • ステップ1: boto3をインポートします およびbotocore 例外を処理するための例外。

  • ステップ2: job_name この関数のオプションのパラメーターです。 job_nameの場合 が提供されている場合、同じジョブに関連付けられているすべてのトリガーを取得し、このジョブを開始できます。ただし、そのようなトリガーがない場合は、すべてのトリガーが返されます。デフォルトでは、値はNoneであるため、 job_name この関数の呼び出し中に渡されない場合は、すべてのトリガーの詳細が返されます。

  • ステップ3: boto3 libを使用してAWSセッションを作成します 。 region_nameを確認してください デフォルトのプロファイルに記載されています。言及されていない場合は、 region_nameを明示的に渡します セッションの作成中。

  • ステップ4: 接着剤用のAWSクライアントを作成します 。

  • ステップ5: get_triggersに電話する job_nameを渡します DependentJobNameとして

  • ステップ6: このジョブに関連付けられているトリガーの詳細を返します。

  • ステップ7: ジョブのチェック中に問題が発生した場合は、一般的な例外を処理します。

サンプルコード

次のコードは、ジョブに関連付けられているすべてのトリガーの詳細をフェッチします-

import boto3
from botocore.exceptions import ClientError

def get_details_of_triggers(job_name=None):
   session = boto3.session.Session()
   glue_client = session.client('glue')
   try:
      response = glue_client.get_triggers(DependentJobName=job_name)
      return response
   except ClientError as e:
      raise Exception("boto3 client error in get_details_of_triggers: " + e.__str__())
   except Exception as e:
      raise Exception("Unexpected error in get_details_of_triggers: " + e.__str__())
a = get_details_of_triggers('employee_details')
print(a)

出力

{'Triggers': [{'Name': '01_PythonShellTest1', 'WorkflowName': 'arn:aws:iam::1234:role/dev-edl, 'Id': 'string', 'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND', 'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING', 'Description': 'string', 'Schedule': 'string'
}]}

  1. Boto3を使用してAWSGlueDataカタログからテーブルを削除するにはどうすればよいですか?

    問題の説明 − Pythonでboto3ライブラリを使用して、アカウントで作成されたテーブルを削除します。 例 −アカウントで作成されたデータベース「test」からテーブル「security」を削除します。 この問題を解決するためのアプローチ/アルゴリズム ステップ1 −例外を処理するためにboto3およびbotocore例外をインポートします。 ステップ2 −AWSGlueカタログから削除する必要があるパラメータdatabase_nameとtable_nameを渡します。 ステップ3 −boto3ライブラリを使用してAWSセッションを作成します。 region_nameがデフォルトの

  2. Boto3を使用してAWSGlueデータカタログからクローラーを削除するにはどうすればよいですか?

    問題の説明 − Pythonでboto3ライブラリを使用して、アカウントで作成されたクローラーを削除します。 例 −アカウントで作成されたクローラー「ポートフォリオ」を削除します。 この問題を解決するためのアプローチ/アルゴリズム ステップ1 −例外を処理するためにboto3およびbotocore例外をインポートします。 ステップ2 −AWSGlueカタログから削除する必要があるパラメータcrawler_nameを渡します。 ステップ3 −boto3ライブラリを使用してAWSセッションを作成します。 region_nameがデフォルトのプロファイルに記載されていることを確認してください