【Logging】VercelのAxiomのメリット【アクセスログ】

# Vercelはログを保存しない

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/ba3a00bb-9fc2-899a-0da9-feea2e4b3b0b.png)

https://vercel.com/guides/how-do-i-store-logs-on-vercel

# Vercelのロギングようわからん

選択肢が多すぎてどれ使えばええん？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/711bb0c4-ad7a-fd86-8a50-1bec259a2201.png)

- GraphJSON
- Axiom
- Logtail
- Logalert
- Sematext Logs
- Logflare
- Datadog

https://vercel.com/integrations#logging

https://zenn.dev/nitaking/scraps/17c442b6d7bdd9

https://zenn.dev/tell_y/scraps/0397f8145eee4e

# Log Drainsを自作してみる

ログドレインを自作しようとしたが、レビューが必須みたい。Personal Account TokenでPOSTしてもダメだった

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/5ee6951e-36e8-b359-2372-db0ca7ed51cc.png)

https://vercel.com/docs/rest-api#endpoints/log-drains

https://vercel.com/docs/integrations/create-integration/submit-integration

https://github.com/vercel/vercel/discussions/7542#discussioncomment-3594572

自作すればWebhookでログを取得できるようだ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/4bce303e-b631-4809-2f57-fdf92286cf9a.png)

静的ファイルやラムダやエッジ関数やrewritesのログができる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/a3146860-63c1-a21e-daa9-b073d73053cb.png)



# とりま新しそうなAxiomを使ってみる

`Add Integration`をクリッククリックで導入だ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/4161c519-32d9-e74b-b11a-04f0e3285894.png)

# Axiomのメリット

## 500GB無料で収集できて直近30日分保存できる

他のインテグレーションよりよさげ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/38819fc3-b0ca-57b9-3217-8597d1d8e536.png)

## API経由でログを取得できる。リアルタイムでも

アクセスログが表示できる。開発者ツールでネットワーク見るとAPI経由で取得している

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/ff434318-6d1f-b85a-b617-54715098825d.png)

API Tokenを作成してAPI経由でログをすべて取得できる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/32dfbebe-b756-8fd0-187d-0d48b88ef146.png)

```bash
curl 'https://cloud.axiom.co/api/v1/datasets/vercel/query?streaming-duration=1s&nocache=false' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer '$API_TOKEN \
  -d '{
    "resolution": "auto",
    "startTime": "1970-01-01T00:00:00.000Z",
    "endTime": "2262-04-11T23:47:16.000Z",
    "limit": 5,
    "order": [
        {
            "field": "_time",
            "desc": true
        }
    ],
    "includeCursor": true
}'
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/0a069b1e-fe78-e161-486c-b7e0fc9124ba.png)

ドキュメントが充実

https://www.axiom.co/docs/restapi/introduction

https://www.axiom.co/docs/restapi/query


## 可視化の機能が強力

```bash
while true; do curl https://.vercel.app; sleep 1; done
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/79ffe275-6234-c439-9dac-a2da6e2400a3.png)

BigQueryライクにクエリ実行できる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/e9898711-c996-7b66-73a3-20935a853a27.png)

いい感じのダッシュボードが用意されている。30日ログを保持していることが分かる

![cloud.axiom.co_hellowork-den8_dashboards_vercel (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/5cc4804e-ff22-a89d-234e-2fb3ec6499c0.png)

閾値を超えたらアラートメールやSlack通知、Discord通知も可能

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/c1547835-4b18-05a7-a134-9630b2cd4318.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/435735/a6c9985d-95e5-ed02-2d51-128acae822e5.png)

https://twitter.com/AxiomFM/status/1559151254407880704