概要
FailureUrl APIは、Fess のクロール失敗URLを管理するためのAPIです。 クロール中にエラーが発生したURLの確認、削除などを操作できます。
ベースURL
/api/admin/failureurl
エンドポイント一覧
| メソッド | パス | 説明 |
|---|---|---|
| GET | / | 失敗URL一覧取得 |
| DELETE | /{id} | 失敗URL削除 |
| DELETE | /delete-all | 全失敗URL削除 |
失敗URL一覧取得
リクエスト
GET /api/admin/failureurl
パラメーター
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
size | Integer | いいえ | 1ページあたりの件数(デフォルト: 20) |
page | Integer | いいえ | ページ番号(0から開始) |
errorCountMin | Integer | いいえ | 最小エラー回数フィルター |
configId | String | いいえ | 設定IDフィルター |
レスポンス
{
"response": {
"status": 0,
"failures": [
{
"id": "failure_id_1",
"url": "https://example.com/broken-page",
"configId": "webconfig_id_1",
"errorName": "ConnectException",
"errorLog": "Connection refused: connect",
"errorCount": 3,
"lastAccessTime": "2025-01-29T10:00:00Z",
"threadName": "Crawler-1"
},
{
"id": "failure_id_2",
"url": "https://example.com/not-found",
"configId": "webconfig_id_1",
"errorName": "HttpStatusException",
"errorLog": "404 Not Found",
"errorCount": 1,
"lastAccessTime": "2025-01-29T09:30:00Z",
"threadName": "Crawler-2"
}
],
"total": 45
}
}
レスポンスフィールド
| フィールド | 説明 |
|---|---|
id | 失敗URL ID |
url | 失敗したURL |
configId | クロール設定ID |
errorName | エラー名 |
errorLog | エラーログ |
errorCount | エラー発生回数 |
lastAccessTime | 最終アクセス時刻 |
threadName | スレッド名 |
失敗URL削除
リクエスト
DELETE /api/admin/failureurl/{id}
レスポンス
{
"response": {
"status": 0,
"message": "Failure URL deleted successfully"
}
}
全失敗URL削除
リクエスト
DELETE /api/admin/failureurl/delete-all
パラメーター
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
configId | String | いいえ | 特定設定IDの失敗URLのみ削除 |
errorCountMin | Integer | いいえ | 指定回数以上のエラーのみ削除 |
レスポンス
{
"response": {
"status": 0,
"message": "All failure URLs deleted successfully",
"deletedCount": 45
}
}
エラータイプ
| エラー名 | 説明 |
|---|---|
ConnectException | 接続エラー |
HttpStatusException | HTTPステータスエラー(404, 500など) |
SocketTimeoutException | タイムアウトエラー |
UnknownHostException | ホスト名解決エラー |
SSLException | SSL証明書エラー |
IOException | 入出力エラー |
使用例
失敗URL一覧の取得
curl -X GET "http://localhost:8080/api/admin/failureurl?size=100&page=0" \
-H "Authorization: Bearer YOUR_TOKEN"
エラー回数でフィルター
# 3回以上エラーが発生したURLのみ取得
curl -X GET "http://localhost:8080/api/admin/failureurl?errorCountMin=3" \
-H "Authorization: Bearer YOUR_TOKEN"
特定設定の失敗URL取得
curl -X GET "http://localhost:8080/api/admin/failureurl?configId=webconfig_id_1" \
-H "Authorization: Bearer YOUR_TOKEN"
失敗URLの削除
curl -X DELETE "http://localhost:8080/api/admin/failureurl/failure_id_1" \
-H "Authorization: Bearer YOUR_TOKEN"
全失敗URLの削除
# 全ての失敗URLを削除
curl -X DELETE "http://localhost:8080/api/admin/failureurl/delete-all" \
-H "Authorization: Bearer YOUR_TOKEN"
# 特定設定の失敗URLのみ削除
curl -X DELETE "http://localhost:8080/api/admin/failureurl/delete-all?configId=webconfig_id_1" \
-H "Authorization: Bearer YOUR_TOKEN"
# 3回以上エラーが発生したURLのみ削除
curl -X DELETE "http://localhost:8080/api/admin/failureurl/delete-all?errorCountMin=3" \
-H "Authorization: Bearer YOUR_TOKEN"
エラータイプ別の集計
# エラータイプごとにカウント
curl -X GET "http://localhost:8080/api/admin/failureurl?size=1000" \
-H "Authorization: Bearer YOUR_TOKEN" | \
jq '[.response.failures[].errorName] | group_by(.) | map({error: .[0], count: length})'
参考情報
Admin API 概要 - Admin API概要
CrawlingInfo API - クロール情報API
JobLog API - ジョブログAPI
障害URL - 失敗URL管理ガイド