3

Google Compute EngineインスタンスでJavaアプリケーションを実行しています。 google-cloud libraryを使用してクラウドパブ/サブトピックにメッセージを公開しようとしていますが、DEADLINE_EXCEEDEDの例外が発生しています。コードは次のようになります。Compute EngineからCloud Pub/Subトピックに公開するときのDEADLINE_EXCEEDED

PubSub pubSub = PubSubOptions.getDefaultInstance().toBuilder() 
      .build().getService(); 

String messageId = pubSub.publish(topic, message); 

結果は次のとおりです。

com.google.cloud.pubsub.PubSubException:io.grpc.StatusRuntimeException:documentationはことを示唆しているDEADLINE_EXCEEDED

この応答は、通常、ネットワークの問題によって発生します。 Compute EngineがPub/Subに到達できるようにするために、Networkingセクションで設定する必要があるものはありますか? default-allow-internalファイアウォールルールが存在します。

私は既にCompute EngineサービスアカウントをPub/Subトピックの権限でエディタとパブリッシャーにしました。

アプリケーションは、Container Engineが管理するCompute Engineインスタンス内のDockerコンテナに存在します。 Pub/SubトピックとCompute Engineインスタンスは同じプロジェクトにあります。 google-cloudライブラリを使用して、Datastoreなどの他のCloud Platformサービスに接続できます。同じプロジェクトのApp Engineインスタンスから、同じPub/Subトピックに間違いなく公開することもできます。

google-cloudの代わりにgoogle-api-services-pubsub APIライブラリを使用すると運が増えますか?

+0

これは暗闇の中のショットですが、正確な要求を送信しているマシンの日時ですか? – rmlan

+0

正確であるようです、はい。 – colintemple

+0

gcloudを使って同じ問題がありますか? https://cloud.google.com/sdk/gcloud/reference/alpha/pubsub/topics/publish – jarmod

答えて

2

私は現時点で同じ問題を抱えており、google-cloud-java issue tracker on GitHubに問題が見つかりました。そこに問題が見つかりませんでした。

google-api-services-pubsub libraries(これは機能しました)をnew onesに変更しましたが、例外がありました。当社のJavaアプリケーションは、Compute Engineのインスタンス上でも動作しています。

+0

あなたの問題を解決しましたか?私は同じ問題を抱えていますが、最新のライブラリと互換性のあるネットがどれかと思います。私は '4.1.8.Final'と' 4.1.3.Final'を試してみましたが、これらの作業のどれも:( – nXqd

関連する問題