Skip to content

トラブルシューティング

esa-cliの使用中に発生する技術的な問題と、その詳細な解決方法を説明します。基本的な問題についてはよくある質問もご確認ください。

症状: 認証エラーが発生する

詳細な解決手順:

  1. 現在の設定を確認
Terminal window
cat ~/.esa-cli-config.json
  1. トークンの権限を確認

    • esa.ioのアプリケーション設定ページで以下を確認:
      • トークンが有効期限切れになっていないか
      • 適切な権限(read/write)が設定されているか
      • チーム名が正しく設定されているか
  2. 新しいトークンを生成

    • 既存のトークンを削除
    • 新しいトークンを生成(権限はread/write)
    • 設定を再実行
Terminal window
esa-cli setup
  1. 設定ファイルの権限を確認
Terminal window
ls -la ~/.esa-cli-config.json
chmod 600 ~/.esa-cli-config.json

症状: 記事やリソースが見つからない

詳細な解決手順:

  1. 記事の存在確認
Terminal window
# 全記事を検索
esa-cli list --query "記事タイトル"
# 特定のカテゴリで検索
esa-cli list --category "カテゴリ名"
  1. 権限の確認

    • 記事がプライベート記事でないか
    • チームのメンバー権限があるか
    • 記事が削除されていないか
  2. URLの確認

    • チーム名が正しいか確認
    • 記事番号が正しいか確認

症状: アクセス権限がない

詳細な解決手順:

  1. チームの権限を確認

    • esa.ioのWebインターフェースでチームメンバー権限を確認
    • 管理者に権限の確認を依頼
  2. 記事の権限を確認

    • 記事がロックされていないか
    • 編集権限があるか

症状: API制限に達した

詳細な解決手順:

  1. リクエスト頻度を確認

    • 短時間での大量リクエストを避ける
    • バッチ処理の間隔を調整
  2. 一時的な回避策

Terminal window
# 処理を一時停止
sleep 60
# 再実行
esa-cli list
  1. 処理件数を制限
Terminal window
# 一度に処理する件数を制限
esa-cli list 5

症状: esa.ioのサーバーエラー

詳細な解決手順:

  1. esa.ioのステータスを確認

  2. 再試行

Terminal window
# 少し待ってから再実行
sleep 30
esa-cli list
  1. キャッシュのクリア
Terminal window
# 一時ファイルを削除
rm -f ~/.esa-cli-cache/*

症状: コマンドの実行が異常に遅い

詳細な診断と解決:

  1. ネットワーク診断
Terminal window
# レスポンス時間を測定
curl -w "@-" -o /dev/null -s "https://{your-team}.esa.io" <<'EOF'
time_namelookup: %{time_namelookup}\n
time_connect: %{time_connect}\n
time_appconnect: %{time_appconnect}\n
time_pretransfer: %{time_pretransfer}\n
time_redirect: %{time_redirect}\n
time_starttransfer: %{time_starttransfer}\n
----------\n
time_total: %{time_total}\n
EOF
  1. システムリソースの確認
Terminal window
# CPU使用率
top -l 1 | grep "CPU usage"
# メモリ使用率
vm_stat | perl -ne '/page size of (\d+)/ and $size=$1; /Pages free: (\d+)/ and printf "Free: %.1f MB\n", $1 * $size / 1048576'
  1. 最適化の実践
Terminal window
# フィルタリングを活用
esa-cli list --category "特定カテゴリ" --user "自分のユーザー名"
# 処理件数を制限
esa-cli list 10
# バックグラウンド処理
nohup esa-cli update-all --category "開発" > update.log 2>&1 &

症状: ファイルの読み書きでエラーが発生

詳細な解決手順:

  1. ディスク容量の確認
Terminal window
df -h
  1. ファイル権限の確認
Terminal window
ls -la *.md
chmod 644 *.md
  1. ファイルの整合性確認
Terminal window
# 破損したファイルを検出
find . -name "*.md" -exec file {} \;
# 空のファイルを検出
find . -name "*.md" -size 0

症状: ネットワークエラーが頻繁に発生

詳細な診断:

  1. DNS解決の確認
Terminal window
nslookup {your-team}.esa.io
dig {your-team}.esa.io
  1. プロキシ設定の確認
Terminal window
echo $http_proxy
echo $https_proxy
echo $no_proxy
  1. ファイアウォールの確認
Terminal window
# macOSの場合
sudo pfctl -s rules
  1. VPN接続の影響確認
    • VPN接続時にesa.ioへのアクセスが制限されていないか
    • 企業ネットワークの制限がないか

症状: 設定が正しく読み込まれない

詳細な解決手順:

  1. 設定ファイルの構文確認
Terminal window
# YAMLの構文チェック
python3 -c "import yaml; yaml.safe_load(open('~/.esa-cli/config.yaml'))"
  1. 設定ファイルのバックアップと復元
Terminal window
# バックアップ
cp ~/.esa-cli-config.json ~/.esa-cli-config.json.backup
# 設定をリセット
rm ~/.esa-cli-config.json
esa-cli setup
  1. 環境変数の確認
Terminal window
env | grep ESA

問題の詳細な分析には、以下の情報を収集してください:

Terminal window
# OS情報
uname -a
sw_vers
# Go環境
go version
go env
# シェル情報
echo $SHELL
echo $PATH
Terminal window
# バージョン情報
esa-cli version
# 設定情報(機密情報は除く)
cat ~/.esa-cli-config.json | jq 'del(.access_token)'
Terminal window
# 接続テスト
curl -I https://{your-team}.esa.io
# 詳細な接続情報
curl -v https://{your-team}.esa.io/api/v1/teams
Terminal window
# システムログ(macOS)
log show --predicate 'process == "esa-cli"' --last 1h
# アプリケーションログ
find ~/Library/Logs -name "*esa*" -type f

問題が解決しない場合は、以下の情報とともにGitHub Issuesで報告してください:

  • エラーメッセージの全文
  • 実行したコマンド
  • esa-cliのバージョン: esa-cli version
  • OS情報: uname -a
  • Goバージョン: go version
  • 設定ファイル(アクセストークンは除く)
  • ネットワーク接続情報
  • 再現手順
  • 期待される動作
  • GitHub Issues
  • タイトルには [Bug] または [Question] を付けてください