この WEB サイトは AWS CloudFront+S3 を使ってホスティングしています。
CloudFront でログを ON にすると、指定した S3 バケットにアクセスログが保存されます。
このアクセスログを解析するのに役立つのが goaccess です。
ただ、msys2 のパッケージには無いようです。Docker や WSL を使えばよいのではありますが・・・
msys2 では以下のようにすると goaccess をコンパイルできました。基本的には、 GoAccess Downloads に書かれている内容と同様です。
- Download ページ https://goaccess.io/download からソースコードをダウンロードする。(記事作成時は goaccess-1.9.4.tar.gz) ダウンロードした tar.gz を展開しておく。
- src/win/mmap.c 3行目の #ifdef _WIN32 と対応する 5 行目の #endif をコメントアウトするか、削除する。
- ./configure --enable-utf8
- make
- make install
これで /usr/bin に goaccess.exe がインストールされます。私は以下のようなスクリプトを作っています。
#!/bin/sh
tf=$(mktemp --suffix .html)
find . -name "$1" -type f -print0 | xargs -0 gunzip -c | env LANG=C goaccess --log-format=CLOUDFRONT -o $tf --ignore-crawlers
start $tf
このスクリプトを、
$ cflog.sh '*2025-11-*'
のように実行して表示させています。