Skip to main content
Glama
TROUBLESHOOTING.md5.09 kB
# ngrok トラブルシューティング ## 問題: ngrokが停止できない ### 症状 ```bash $ ./stop-all.sh ❌ ngrokの停止に失敗しました ⚠️ PID 435524 の停止に失敗しました(権限がない可能性) ``` ### 原因 1. ngrokが別のターミナル/セッションで起動されている 2. snapパッケージとして実行されている 3. 別のユーザー権限で実行されている ## 解決方法 ### 方法1: 専用スクリプトを使用(推奨) ```bash ./stop-ngrok.sh ``` このスクリプトは: - すべてのngrokプロセスを検索 - ユーザー情報を表示 - 対話的に停止を確認 - 適切な停止方法を提案 ### 方法2: 元のターミナルで停止 ngrokを起動したターミナルを見つけて: ```bash Ctrl+C ``` ### 方法3: プロセスIDで直接停止 ```bash # プロセスを確認 ps aux | grep ngrok # 出力例: # akari 435524 0.6 0.1 1253112 29284 ? Sl 15:31 0:40 /snap/ngrok/315/ngrok http --region=jp 8000 # 停止 kill -9 435524 # または pkill -9 -f "ngrok" ``` ### 方法4: ポートベースで停止 ```bash # ポート4040を使用しているプロセスを停止 lsof -ti:4040 | xargs kill -9 # ポート4041を使用しているプロセスを停止 lsof -ti:4041 | xargs kill -9 ``` ### 方法5: sudo権限で強制停止 ```bash sudo pkill -9 ngrok ``` ### 方法6: systemctl経由(snap版の場合) ```bash # snapサービスを確認 snap services ngrok # 停止(もしサービスとして実行されている場合) sudo snap stop ngrok # 完全に無効化 sudo snap disable ngrok ``` ## ngrokが複数起動している場合 ### すべてのngrokプロセスを確認 ```bash ps aux | grep ngrok # または pgrep -a ngrok ``` ### すべて停止 ```bash # 自分のプロセスのみ pkill -u $(whoami) ngrok # すべてのngrok(sudo必要な場合あり) sudo pkill -9 ngrok ``` ## ポートの競合を防ぐ ### 起動前にチェック ```bash # ポート4040がすでに使用されているか確認 lsof -i:4040 # 使用中の場合、そのプロセスを停止 lsof -ti:4040 | xargs kill -9 ``` ### 別のポートでngrokを起動 ngrokのWeb UIはデフォルトで4040を使用しますが、変更可能: ```bash ngrok http 3000 --web-addr=localhost:4050 ``` ## ngrok管理画面から確認 ブラウザで以下にアクセス: ``` http://localhost:4040 ``` または ``` http://localhost:4041 ``` 管理画面からもトンネルの停止が可能です。 ## 問題: "endpoint already online" エラー ### エラーメッセージ ``` failed to start tunnel: The endpoint 'https://xxx.ngrok-free.dev' is already online. ERR_NGROK_334 ``` ### 原因 同じngrokアカウントで同じエンドポイントが既に使用中 ### 解決方法 #### 1. 既存のトンネルを停止 ```bash ./stop-ngrok.sh ``` #### 2. ngrokダッシュボードで確認 https://dashboard.ngrok.com/tunnels/agents 既存のトンネルを終了 #### 3. 別のリージョン/設定で起動 ```bash # ランダムなURLを使用 ngrok http 3000 # 別のリージョン ngrok http 3000 --region=us # または固定ドメインを使用(有料プラン) ngrok http 3000 --domain=your-custom-domain.ngrok-free.app ``` ## 予防策 ### 1. start-all.shを使用 自動的に既存プロセスをチェック・停止: ```bash ./start-all.sh ``` ### 2. クリーンアップの習慣 作業終了時に必ず停止: ```bash ./stop-all.sh ``` ### 3. エイリアスを設定 `.bashrc` または `.zshrc` に追加: ```bash alias mcp-start='cd ~/MMMCP/universal-mcp-server && ./start-all.sh' alias mcp-stop='cd ~/MMMCP/universal-mcp-server && ./stop-all.sh' alias mcp-status='ps aux | grep -E "node.*build|ngrok"' ``` ## デバッグコマンド集 ### プロセス確認 ```bash # ngrokプロセス ps aux | grep ngrok # MCPサーバープロセス ps aux | grep "node.*build" # 両方 ps aux | grep -E "ngrok|node.*build" ``` ### ポート確認 ```bash # ポート3000(MCPサーバー) lsof -i:3000 # ポート4040/4041(ngrok管理画面) lsof -i:4040,4041 # すべての開いているポート netstat -tulpn | grep LISTEN ``` ### リソース使用状況 ```bash # CPUとメモリ使用率 ps aux | grep -E "ngrok|node.*build" | awk '{print $1, $2, $3, $4, $11}' ``` ### ログ確認 ```bash # MCPサーバーログ tail -f logs/combined.log # エラーのみ tail -f logs/error.log # ngrokログ(もしファイルに出力している場合) tail -f /tmp/ngrok-*.log ``` ## それでも解決しない場合 ### 最終手段: システム再起動 すべての方法が失敗した場合: ```bash sudo reboot ``` 再起動後、cleanな状態から: ```bash ./start-all.sh ``` ### サポート 問題が継続する場合は、以下の情報を集めて報告: ```bash # システム情報 uname -a ngrok version # プロセス情報 ps aux | grep ngrok # ポート情報 lsof -i:3000,4040,4041 # ログ tail -50 logs/error.log ```

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Amana03/universal-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server