2017-07-05 7 views
1

私はバッチジョブを実行してS3からファイルをアップロードするたびに、7月3日以降、「バルク追加操作中に1つ以上のイベントが拒否されました」というエラーメッセージが表示されます。キーンは.net SDKです。Keen IOのバルク追加操作が突然停止する

このエラーがKeen IOのサーバーや他の場所から発生しているかどうかはわかりません。

なぜこのメッセージが表示されますか?

ありがとうございます。

+1

.NET SDKを使用していますか?エラーメッセージがそのライブラリに固有のものであるようです。 –

+1

SDKのコードを見ると、非同期アップロードでエラーが発生した場合にこのエラーが発生します。 https://github.com/keenlabs/keen-sdk-net/blob/master/Keen/KeenClient.cs#L320 –

答えて

0

非同期アップロード中に何らかの種類のAPIエラーが発生したため、このエラーは.net sdkによってスローされています。 Keen APIによってスローされているエラーを調べることは可能ですか? APIから詳細なエラー応答を得ることができれば、問題をよりよく分離できます。イベントを投稿するときに表示される最も一般的なエラーは次のとおりです。

  1. パラメータがないか無効です。エラーメッセージには、何が間違っているかを理解するのに役立つ情報が含まれていることがよくあります。通常、あなたのイベントの1つで無効なJSONです。
  2. あなたのリクエストは大きすぎます。イベントに何百ものプロパティがあり、異常に大きいイベントの場合は、バッチが大きすぎて投稿できない可能性があります。これに対処するためにバッチサイズを減らすことができます。トラブルシューティングのための

いくつかの次のステップは次のようになります。あなたがキーンAPIによってスローされたエラーメッセージを見つけることができるかどうか

  1. を参照してください。要求が失敗した理由の詳細が表示されます。
  2. イベントを検査して、失敗する理由が明らかかどうかを確認します。
+0

を参照してください。ログに表示されるのはこれだけです:Keen.Core.KeenBulkException:1つまたは複数バルク追加操作中にイベントが拒否されました。 例外は私にこれ以上の情報を与えてくれません。 – user2514662

4

私は問題の根本原因を考え出しました。うまくいけば、これも他の人を助けることができます。

私は20のアクティビティ(S3ToKeen.Activity)を含む1つの分析エンベロープ(AnalyticsEnvelope)を持っています。これらのアクティビティオブジェクト(S3ToKeen.Activity)には、実際に長い不器用なテキスト(それぞれ9241文字)が含まれています。

誰か(テキストの構造上、ボットになる可能性があります)が、このテキストをテキストボックスに入力しました。 GoogleのJavaScriptがS3の解析ファイルに取り込まれて保存されました。これを防ぐには、ユーザーがウェブサイトのテキストボックスに入力できる文字数に制限を設けてください。

私たちは100個のアイテム(S3ToKeen.AnalyticsItem)の大量にデータを送信しているので、これを最初から理解することは困難でした。だから私はバッチジョブを少し構成し、項目を1つずつ送信しなければならなかった。

関連する問題