В этой короткой заметке речь пойдет о обработке файле лога стандарта combined для анализа user-agent. В конфигурационном файле Apache это выглядит так:
а в конфигурационном файле nginx:
Строка в файле имеет вид:
0722 Firefox/3.6.8 ( .NET CLR 3.5.30729)"
Это кстати реальная строка из лога одного моего сайта. Как видно в файл пишется IP-адрес, дата, запрос, код ответа, длина заголовка, реферер, агент. Собственно для получения отсортированного в порядке убывания списка, включающего количество одинаковых строк в исходном файле, можно запустить следующую команду:
Для чтения файла под Windows необходимо добавить в каждой строке еще один символ перевода строки:
На базе материала заметки можно писать скрипты, создающие более информативную статистику с агрегацией по браузерам, операционных системах и т.д.