トラブルシューティング
NetFUNNEL Java Agent統合に関する一般的な問題、解決方法、よくある質問です。
インストール問題
ライブラリインストール失敗
症状:
netfunnel-agent.jarファイルが見つからない- 依存関係追加失敗
解決方法:
- JARファイル確認:
netfunnel-agent.jarファイルがlibsフォルダにあるか確認 - 依存関係パス確認: Gradle/Maven設定でJARファイルパスが正しいか確認
- 外部依存関係確認:
gson、jackson-module-kotlinが正しく追加されているか確認
初期化失敗
症状:
- サーバー起動時にエラー発生
- NetFUNNELが初期化されない
解決方法:
- clientId確認:
clientIdが正しく設定されているか確認 - secretKey確認:
secretKeyが正しく設定されているか確認 - 空文字列確認:
clientIdとsecretKeyが空文字列でないか確認 - ビルド確認: プロジェクトが正しくビルドされているか確認
Interceptor/Filter問題
Interceptorが動作しない
症状:
- Interceptorが呼び出されない
- NetFUNNELロジックが実行されない
解決方法:
- 登録確認:
WebMvcConfigurerのaddInterceptorsメソッドが正しく実装されているか確認 - パスパターン確認:
addPathPatternsが正しく設定されているか確認 - ビーン登録確認: Interceptorが
@Componentで登録されているか確認 - 順序確認: 他のInterceptorとの順序問題がないか確認
Filterが動作しない
症状:
- Filterが呼び出されない
- NetFUNNELロジックが実行されない
解決方法:
- 登録確認:
FilterRegistrationBeanが正しく登録されているか確認 - URLパターン確認:
addUrlPatternsが正しく設定されているか確認 - 順序確認:
setOrderでFilter順序が正しく設定されているか確認
トリガールール問題
トリガールールがマッチしない
症状:
- 待機列が適用されない
- ルールに適合するURLでも待機室が表示されない
解決方法:
- ルール確認: コンソールでトリガールールが正しく設定されているか確認
- URL確認: アクセスしたURLがルールのValueと一致するか確認
- Matchオプション確認: Matchオプション(Equals、Contains、StartsWith、EndsWith)が正しいか確認
- 大文字小文字確認: Aaオプション(大文字小文字区別)設定確認
- テスト機能使用: コンソールのトリガールールテスト機能でURLがルールに適合するか確認
待機室が表示されない
症状:
- ルールに適合するURLでも待機室が表示されない
- ユーザーが直接進行する
解決方法:
- セグメント有効化: セグメントが有効化されているか確認
- 進入状態確認: 進入状態が
Waitingに設定されているか確認 - 進入許可数確認: テストのために進入許可数を
0に設定 - ルールマッチング確認: トリガールールが正しくマッチしているか確認
ネットワークおよび接続問題
ネットワーク接続エラー
症状:
- NetFUNNELサーバーに接続できない
- リクエストが失敗する
解決方法:
- 接続確認: インターネット接続状態を確認
- ファイアウォール: NetFUNNELドメインがブロックされていないか確認
- プロキシ設定: 必要な場合プロキシ構成
- サーバーURL確認:
serverUrl設定が正しいか確認
タイムアウトエラー
症状:
- リクエストがタイムアウトする
- レスポンスを受信できない
解決方法:
- ネットワーク状態確認: ネットワーク接続状態を確認
- サーバー状態確認: NetFUNNELサーバー状態を確認
- 設定確認: 初期化設定が正しいか確認
ロギング問題
ログが出力されない
症状:
- ログレベルを設定したがログが出力されない
解決方法:
- 依存関係確認:
logback-classic依存関係が追加されているか確認 - ログレベル確認:
logLevel設定が正しいか確認 - ログ設定確認:
logback.xmlまたはlogback-spring.xml設定確認
キー管理問題
キーが返却されない
症状:
- 次のユーザーが無期限に待機する
- 待機列が進行しない
解決方法:
- returnKey設定確認:
returnKey設定が正しいか確認 - タイムアウト確認: セグメントタイムアウト設定確認
- サーバーログ確認: サーバーログでキー返却関連エラー確認
デバッグのヒント
ログ確認
デバッグのためにlogLevelを設定してログを確認できます:
import ch.qos.logback.classic.Level;
NetFunnelInitialize config = NetFunnelInitialize.Companion.builder()
.clientId("{{CLIENT_ID}}")
.secretKey("{{SECRET_KEY}}")
.logLevel(Level.DEBUG) // デバッグログ有効化
.build();
一般的な確認事項
- 初期化確認:
NetFunnelInitializeが正しく作成されているか確認 - Interceptor/Filter登録: Interceptor/Filterが正しく登録されているか確認
- トリガールール: コンソールでトリガールールが正しく設定されているか確認
- 依存関係確認: すべての必要な依存関係が正しく追加されているか確認
関連ドキュメント
- インストールと初期化: 詳細設定ガイド
- APIリファレンス: 完全な関数仕様
- 初期化設定: すべての初期化パラメータ
- FAQ: よくある質問