2017-12-19 7 views
0

料金を見積もるためにCostExplorerを使用しようとしましたが、TagNameでフィルタリングしました。私のマシン(アイルランド)のいずれかのコストを要求することによりコストエクスプローラでエンドポイントURLに接続できませんでした。

time_period = {'Start':'2017-12-18', 'End':'2017-12-19'} 
filters = { 
    "And": 
    [{ 
     "Tags": { 
     "Key": "TagName", 
     "Values": ["Test1"] 
     } 
    }] 
} 

print aws.get_cost_and_usage(TimePeriod=time_period, Granularity='DAILY', Metrics=['BlendedCost'], Filter=filters) 

は、ce.eu-west-1.amazonaws.comに接続することができないというエラーが表示さ

Traceback (most recent call last): 
    File "test.py", line 22, in <module> 
    print aws.service.cloudwatch.client.get_cost_and_usage(TimePeriod=time_period, Granularity='DAILY', Metrics=['BlendedCost'], Filter=filters) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 359, in _check_caught_exception 
    raise caught_exception 
botocore.exceptions.EndpointConnectionError: Could not connect to the endpoint URL: "https://ce.eu-west-1.amazonaws.com/" 

アイルランドではまだこのサービスを利用できません。

私はここで、 "コストエクスプローラ"/"請求"/"コスト管理" を見つけることができません。 http://docs.aws.amazon.com/general/latest/gr/rande.html#awssupport_region

私が使用している:

boto3 == 1.5.2

botocoreを== 1.8.16

+0

エンドポイントの可用性は、私が考えるベンダーと話すことによって決定されます。 – jdv

答えて

2

コストエクスプローラサービスはus-east-1に配備されています。

クエリのすべてはすなわち、その領域に導かなければなりません。:

client = boto3.client('ce', region_name='us-east-1') 
client.get_cost_and_usage(....) 

応答は、すべての地域が含まれます。

また、請求コンソールに移動すると、AWS UIに「グローバル」と表示されます。

+0

ありがとうございます。 あなたはどのようにそれを知っていますか、それを見ましたか? 私はドキュメントを探しています... –

+1

私が以前に遭遇した場所はわかりません。おそらく、Route53 APIのドキュメントもありますが、これもus-east-1にのみあります。 get_available_regions()と呼ばれるセッションクラスのメソッドがあり、サービスがデプロイされる場所を記述するために使用されますが、 'ce'の場合は空白を返します。人生の中のいくつかは完璧ではありません:X –

+0

boto3.session.Session()。get_available_regions( 'ec2')はec2エンドポイントを持つすべてのリージョンを返します。 'route53'や 'ce'などのグローバルサービスを使用して同じサービスを実行した場合、返されるリストは空です。>> [] –

関連する問題