Назад | Перейти на главную страницу

Есть ли у кого-нибудь конфигурация для обработки журналов AWS CloudFront / S3 с помощью AWStats (или аналогичного sw)?

Я не хочу предоставлять доступ к моим журналам внешней компании, такой как s3stat. Я знаю, что AWS регистрирует S3 и Cloud Front в формате, читаемом AWStats. Кто-нибудь использовал AWSats для их анализа?

S3stat раньше предлагал размещенную версию своего программного обеспечения, которая была в бета-версии, но я считаю, что она больше не поддерживается.

Я не привязан к AWStats, я рассмотрю другие варианты программного обеспечения для анализа веб-логов.

Я не использую AWStats с S3, но предполагаю, что есть 3 проблемы с обработкой журналов:

  1. Вам нужно получить данные - они хранятся на S3

    С Cloudfront AWS дает вам возможность выбрать, какую корзину вы хотите использовать - она ​​не обязательно должна быть исходной (исходной) корзиной. Вы можете легко настроить конкретную корзину для своих журналов и смонтировать ее через s3fs - это должно обеспечивать простейший доступ к файлам - сохранение отметок времени и т. д., которые часто необходимы для инкрементной обработки журналов. В качестве альтернативы, если вы не хотите монтировать корзину как локальную файловую систему, вы можете использовать s3cmd, awsили один из пакетов SDK для загрузки файлов. (Для этой цели существует скрипт Python (использующий boto) - Вот - хотя за его эффективность не ручаюсь.)

  2. Вам нужно распаковать и объединить логи

    Журналы Cloudfront сжимаются (gzip) и хранятся в виде нескольких файлов - имена файлов содержат дату и час (например, XXXXXXXXXXXXX.YYYY-MM-DD-HH.XXXXXXXXX), хотя в час может быть несколько файлов. Файлы можно распаковать с помощью gunzip и в сочетании с (предоставленным инструментом AWStats) logresolvemerge.pl.

  3. Вам необходимо предоставить собственный формат журнала для AWStats

    Формат файла разделен табуляцией и имеет вид:

    date time x-edge-location sc-bytes c-ip cs-method cs(Host) cs-uri-stem sc-status cs(Referer) cs(User-Agent) cs-uri-query
    2011-06-27  08:31:10    JFK1    587 xxx.xxx.xxx.xxx GET xxxxxxxxxxxxxx.cloudfront.net   /path/to/your/file  304 http://www.mydomain.com/page/requesting/file    User-agent-string - 

    Поэтому вы бы настроить AWStats с:

    LogType=W
    LogSeparator="\t"
    LogFormat="%time2 %cluster %bytesd %host %method %virtualname %url %code %referer %ua %query"