9.2. API を使用した使用状況ログの表示す
API を使用して、組織またはリポジトリー別にログを表示できます。ログは、集約 (グループ化) したり、より詳細にリスト表示したりすることもできます。ユーザー別、特定の日付範囲別、またはページ別に表示することもできます。
9.2.1. 集約されたログの表示 リンクのコピーリンクがクリップボードにコピーされました!
集約されたログは、組織、リポジトリー、特定のユーザー、または現在のユーザー別に表示できます。結果をフィルタリングするために、performer、starttime/endtime、next_page などのオプションのコマンドを渡すこともできます。
前提条件
- OAuth アクセストークンを作成 している。
手順
現在のユーザーの集約された (またはグループ化された) ログを返すには、
GET /api/v1/user/aggregatelogsAPI エンドポイントを使用します。$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ -H "Accept: application/json" \ "https://<quay-server.example.com>/api/v1/user/aggregatelogs"出力例
{"aggregated": [{"kind": "create_tag", "count": 1, "datetime": "Tue, 18 Jun 2024 00:00:00 -0000"}, {"kind": "manifest_label_add", "count": 1, "datetime": "Tue, 18 Jun 2024 00:00:00 -0000"}, {"kind": "push_repo", "count": 2, "datetime": "Tue, 18 Jun 2024 00:00:00 -0000"}, {"kind": "revert_tag", "count": 1, "datetime": "Tue, 18 Jun 2024 00:00:00 -0000"}]}また、
performerとstarttime/endtimeクエリーを渡して、特定期間における特定のユーザーの集約されたログを取得することもできます。以下に例を示します。$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ -H "Accept: application/json" \ "<quay-server.example.com>/api/v1/user/aggregatelogs?performer=<username>&starttime=<MM/DD/YYYY>&endtime=<MM/DD/YYYY>"集約されたログは、
GET /api/v1/organization/{orgname}/aggregatelogsを使用して組織別に表示することもできます。以下に例を示します。$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ -H "Accept: application/json" \ "<quay-server.example.com>/api/v1/organization/{orgname}/aggregatelogs"集約されたログは、
GET /api/v1/repository/{repository}/aggregatelogsコマンドを使用してリポジトリー別に表示することもできます。次の例には、starttime/endtimeフィールドが含まれています。$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ -H "Accept: application/json" \ "<quay-server.example.com>/api/v1/repository/<repository_name>/<namespace>/aggregatelogs?starttime=2024-01-01&endtime=2024-06-18""