CrawlingInfo API

概要

CrawlingInfo APIは、Fess のクロール情報(クロールセッション)を参照・管理するためのAPIです。 クロールセッションの一覧取得、個別取得、削除などを操作できます。

ベースURL

/api/admin/crawlinginfo

エンドポイント一覧

メソッド パス 説明
GET /logs クロール情報一覧取得
GET /log/{id} クロール情報取得
DELETE /log/{id} クロール情報削除
DELETE /all クロールセッションの一括削除(実行中を除く)

クロール情報一覧取得

リクエスト

GET /api/admin/crawlinginfo/logs

パラメーター

パラメーター 型 必須 説明
size Integer いいえ 1ページあたりの件数(デフォルト: 25。fess_config.properties の paging.page.size で変更可能)
page Integer いいえ ページ番号(1から開始、デフォルト: 1)
session_id String いいえ セッションIDフィルター(部分一致)

これらのパラメーターは、JSON のリクエストボディ(例: {"size": 50, "page": 1} )で指定します。URL のクエリ文字列(例: ?size=50 )で指定した値は無視されるため、指定しない場合は常に先頭の 25 件が返ります。

レスポンス

{
  "response": {
    "status": 0,
    "logs": [
      {
        "id": "crawling_info_id_1",
        "session_id": "20250129100000",
        "name": "Default Crawler",
        "expired_time": "1738200000000",
        "created_time": 1738108800000
      },
      {
        "id": "crawling_info_id_2",
        "session_id": "20250128100000",
        "name": "Default Crawler",
        "expired_time": "1738113600000",
        "created_time": 1738022400000
      }
    ],
    "total": 10
  }
}

レスポンスフィールド

フィールド 説明
id クロール情報ID
session_id セッションID
name セッション名
expired_time 有効期限(エポックミリ秒。文字列として返されます)
created_time 作成時刻(エポックミリ秒。数値として返されます)

注釈

レスポンスの各ログオブジェクトには、内部的に使用される crud_mode フィールド (CRUD操作モードを示す整数値で、参照時は常に 0)が含まれます。 クライアント側では無視して問題ありません。

クロール情報取得

リクエスト

GET /api/admin/crawlinginfo/log/{id}

レスポンス

{
  "response": {
    "status": 0,
    "log": {
      "id": "crawling_info_id_1",
      "session_id": "20250129100000",
      "name": "Default Crawler",
      "expired_time": "1738200000000",
      "created_time": 1738108800000
    }
  }
}

クロール情報削除

リクエスト

DELETE /api/admin/crawlinginfo/log/{id}

レスポンス

{
  "response": {
    "status": 0
  }
}

クロールセッションの一括削除

現在実行中のセッションを除く、すべてのクロールセッション(およびそのパラメーター情報)を 削除します。経過時間による判定は行われず、実行中でないセッションがすべて削除対象となります。

リクエスト

DELETE /api/admin/crawlinginfo/all

レスポンス

{
  "response": {
    "status": 0
  }
}

使用例

クロール情報一覧の取得

curl -X GET "http://localhost:8080/api/admin/crawlinginfo/logs" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"size": 50, "page": 1}'

特定セッションでフィルター

curl -X GET "http://localhost:8080/api/admin/crawlinginfo/logs" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"session_id": "20250129100000"}'

クロール情報の取得

curl -X GET "http://localhost:8080/api/admin/crawlinginfo/log/crawling_info_id_1" \
     -H "Authorization: Bearer YOUR_TOKEN"

クロール情報の削除

curl -X DELETE "http://localhost:8080/api/admin/crawlinginfo/log/crawling_info_id_1" \
     -H "Authorization: Bearer YOUR_TOKEN"

セッションの一括削除

curl -X DELETE "http://localhost:8080/api/admin/crawlinginfo/all" \
     -H "Authorization: Bearer YOUR_TOKEN"

参考情報