2017-03-16 13 views
0

私は、api要求にpojosを含む依存コンポーネントのライブラリを使用しています。 api呼び出しのリクエストと応答pojosを記録する必要があります。しかし、私はそれがログに記録することはできませんので、pojosから特定の要素を除外する必要があります。オプションは何ですか?ロギングのために特定の変数をPOJOから除外する方法

GSONを見て、@ Excludeアノテーションを含んでいます。しかし、pojosは依存ライブラリからのものなので、そのような注釈を含むように変更することはできません。

+0

pojoを拡張して除外したいものを除外する独自のtoStringを実装できますか? – 7663233

+0

延長の意味は? – user964287

+0

私はこのように思った パブリッククラスMyPojoはPojo { @オーバーライドを拡張します パブリックString toString(){ return ""; // < - 何でも、あなたの小道具をログすることができるかどうかを確認してください } – 7663233

答えて

0

Iよ...私が正しくあなたをundestandてることはないかなり確実

あなたは単にGSON要求と応答をログに記録したいのですが、いくつかの要素が記録されないことができないとして(何の要素となぜですか?)あなたの要求にそれらを必要としない場合は、それらを除外したいですか?

@Excludeアノテーションの下に、特定のフィールドをシリアル化から除外する他の方法があります。あなたはcorresponding documentationでそれを見ることができます。 APIドキュメントとフィールドの除外については、GSON javadoc、特にGSONBuilder.setExclusionStrategyとExclusionStrategyをご覧ください。

+0

_what要素とその理由_たとえば[PII](https://en.wikipedia.org/wiki/Personally_identifiable_information)は記録しないでください。 Webサーバーにアクセスしたハッカーにとっては、簡単にしないでください。 PIIを含むログファイルは、権限のない人に情報を公開する可能性があるため、共有/電子メールによる共有は避けてください。 –

+0

はい、正しいです。私はリクエストにpii情報を記録したくありません。 Pojoを修正できないので、それを行う方法を探してください。 – user964287

+0

私の質問は明らかに間違っていました。デバッグ環境以外のすべての接続パラメータは絶対に記録しないでください! –

関連する問題