EvoLiNQ 公共交通アナライザー(Beta) — 管理者向け操作説明書 利用者向け操作説明書 ← 地図に戻る
管理者向け

管理者向け操作説明書

/admin/ 画面から行う、GTFSデータの管理・グラフ再構築・人口メッシュ設定など管理者向け機能の操作説明書です。

一般利用者向けの基本操作(地点指定・分析メニュー・統計レイヤなど)は 操作説明書 を参照してください。

1. 管理画面について

1.1 アクセス方法とBasic認証

管理画面は /admin/ にあり、Basic認証(ADMIN_USERNAME / ADMIN_PASSWORD)でアクセスを制限しています。一般公開画面(/)とは別のURLです。

画面挿入Basic認証のログインダイアログ
画面挿入/admin/ 画面全体(一般画面のサイドバーに「システム設定(GTFS データ)」パネルが追加された状態)

1.2 管理機能が使えない場合

サーバー環境変数 ADMIN_USERNAME / ADMIN_PASSWORD が未設定の場合、管理機能は503エラーで無効化されます。管理機能を使う場合は、これらの環境変数がサーバー側で設定されていることをインフラ担当者に確認してください(設定は .env ファイルで行います)。

2. GTFSフィードの管理

サイドバー最下段の「システム設定(GTFS データ)」パネルから操作します。

2.1 フィードを選ぶ(GTFS-data.jpから検索)

「フィードを選ぶ…」を押すと検索ダイアログが開きます。

絞り込み条件内容
都道府県「全国」を指定すると全フィードが対象(実測548フィード)
組織名前方一致で検索
組織ID完全一致で検索(例:chitetsu)
地図の表示範囲地図を動かして「再検索」を押すと連動
一覧内の絞り込み取得済み一覧に対する文字列検索(クライアント側)

複数のフィードをチェックボックスで選択できます。選択状態は絞り込み条件を変えても保持され、都道府県をまたいだ選択も可能です。選択中の一覧はサイドバーに表示され、個別に解除できます。

画面挿入フィード検索ダイアログ(絞り込み条件とチェックボックス一覧)
画面挿入サイドバーの選択中フィード一覧

2.2 フィードを追加する(アップロード/URL指定)

GTFS-data.jpに無いフィードは、「フィードを追加…」からZIPファイルをアップロードするか、ZIPファイルの公開URLを指定して追加できます。

  • URLを指定した場合も、登録時にサーバー側へファイルを取得・保存するため、再構築時には保存済みファイルが使われます。
  • ファイルサイズの上限は200MBです。
  • 追加したフィードは自動的に選択状態になるため、内容を確認したうえで「選択を適用して再構築」を押してください。
画面挿入フィード追加ダイアログ(アップロード欄/URL入力欄)

補助ファイルの自動除去について

古い形式の translations.txt を含むGTFSフィードは、そのままではOTPのグラフ構築全体が失敗します。このシステムは配置時に必須列の有無を確認し、不足している場合は自動的に translations.txt を除いたZIPを構築対象とします。除去が行われた場合は、サイドバーに ℹ ◯◯: translations.txt(必須列がありません…)を除いて読み込みました のように表示されます。翻訳情報は表示用の補助情報であり、経路探索そのものには影響しません。

2.3 選択を適用してグラフを再構築する

フィードの選択・追加が済んだら、「選択を適用して再構築」を押します。

  • 選択した各フィードの file_url からZIPをダウンロードして配置します。ダウンロードは版(file_uid)付きでキャッシュされ、同じ版であれば再取得しません。
  • 配置後、OTPのグラフ再構築が自動的に開始されます。
  • 絞り込み条件・選択内容はサーバー側に保存され、再起動後も保持されます。
画面挿入「選択を適用して再構築」ボタンとその周辺

2.4 ビルドログの確認

「ビルドログ」で再構築の進捗を確認できます。完了すると OTP: 稼働中 のバッジが緑色になります。

  • 再構築は、既存のグラフを退避したうえで行われ、成功したときだけ新しいグラフに入れ替わります。
  • 失敗した場合は旧グラフに戻り、状態は serving(正常稼働)ではなく serving-stale(稼働中だが選択内容と不一致)になります。この場合、画面に「いま検索に使っているデータは現在のGTFS選択と一致しません」という趣旨の表示が出ます。
  • 戻せる旧グラフが無い場合は failed のまま次の再構築要求を待ち、検索機能は提供されません。
画面挿入ビルドログの表示例
画面挿入OTP: 稼働中 バッジ(緑)/ serving-stale 表示時の状態行

3. 人口メッシュ(e-Stat)の設定

人口メッシュは任意機能で、未設定でもGTFS・到達圏など他の機能には影響しません。

3.1 事前準備(APIキー取得)

  1. e-Stat API で利用者登録し、アプリケーションIDを取得します。
  2. サーバーの .env に ESTAT_APP_ID= を設定し、APIコンテナを再作成します(docker compose up -d --build api)。この作業はサーバー管理者が行います。

3.2 設定手順

Basic認証付きの /admin/ を開き、「人口メッシュ(e-Stat)」パネルで以下を設定します。

項目内容
調査年度対象とする国勢調査の年度
メッシュ解像度1km/500m/250mから選択
statsDataId通常は空欄でよい(自動検索できない表を使う場合のみ指定)
絞り込みコード(cdTab、cdCat01、cdTime)必要な場合のみ指定

設定後、「人口メッシュを有効にする」をONにして保存します。公開画面では500m/250mの解像度を選び、「国勢調査(人口・年齢)」レイヤを選択すると表示されます。

画面挿入「人口メッシュ(e-Stat)」設定パネル

補足:地域メッシュ統計は1次メッシュごとに表が分かれているため、指定した調査年度・解像度から表示範囲に対応する表を自動検索します。取得結果はサーバー側にキャッシュされ(既定TTL 30日、.env の ESTAT_CACHE_TTL_DAYS で変更可)、APIコンテナ再起動後も再利用されます。アプリケーションIDはブラウザや設定ファイルには保存されず、サーバー環境変数としてのみ扱われます。

4. GTFS比較モードの運用

GTFS A/B比較機能を使うには、比較用OTPワーカーを追加して起動する必要があります(インフラ担当者による作業)。

docker compose --profile compare up -d --build
  • 比較用グラフは自動的にキャッシュされ、GTFS・OSM・OTP設定の内容が同じであれば再構築しません。
  • 既定では最大8件・8GB・空き容量1GBを基準に、最終利用が古いものから自動整理されます。上限は .env の COMPARE_GRAPH_MAX_ITEMS、COMPARE_GRAPH_MAX_GB、COMPARE_GRAPH_MIN_FREE_GB で変更できます。
  • 通常のOTPに加えて比較用OTPが同時に稼働するため、メモリ・ディスク容量に余裕を持たせてください(目安:通常OTP 6GB+比較OTP 2GBなら物理メモリ8GB以上)。

5. 管理者向けトラブルシューティング

Q. OTP: 稼働中 にならず「ビルド要求待ち」のままになっている
A. まだ一度もGTFSフィードが配置されていない状態です。「フィードを選ぶ…」からフィードを選択し、「選択を適用して再構築」を押してください。
Q. グラフ再構築後に serving-stale と表示される
A. 直前の再構築が失敗し、旧グラフに戻った状態です。ビルドログでエラー内容を確認してください。GTFSフィードの形式に問題がある場合(例:translations.txt の必須列不足)は自動的に補正されますが、それ以外のエラーはログの内容に応じて対応してください。
Q. 人口メッシュのレイヤが表示されない
A. .env に ESTAT_APP_ID が設定されているか、/admin/ で「人口メッシュを有効にする」がONになっているかを確認してください。
Q. 比較モードが極端に遅い/構築が終わらない
A. メモリ・ディスク容量が不足している可能性があります。特に1GB級のVPSなど小規模な環境では、スワップを増やしても構築時間が大幅に延びるため、比較モードの運用には向きません。
Q. 本番環境(Nginx経由)での設定を知りたい
A. リポジトリの deploy/README.md にリバースプロキシ・HTTPS化・レート制限の設定例があります。