Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   PHP (http://www.flasher.ru/forum/forumdisplay.php?f=20)
-   -   Чиста похвастаться (http://www.flasher.ru/forum/showthread.php?t=53192)

[subway]design 28.12.2003 11:12

Чиста похвастаться
 
Во какую я штуку написал: http://subway.net.ru/stat/

kompadre 28.12.2003 11:32

Ых, хвастун :)

А так, в принципе, очень даже не очень плохо.

Nirva 28.12.2003 13:54

хороша штука.
а у меян хостер awstats дает. полный улет, - все, что надо =)

kompadre 28.12.2003 15:33

А ведь есть-же разница между "хостинг дает" и "(своми руками) написал".ну почему он всегда так не в тему?

nagash 28.12.2003 15:42

да?
хех...

kompadre 28.12.2003 15:55

да?

[subway]design 28.12.2003 16:05

Разница есть не оттого, что одно "дает хостинг", а второе - "своими руками". Разница в том, что моя статистика гораздо лучше :)

Nirva 28.12.2003 17:57

компадре, поясни вторую часть фразы.
2[subway]design: да нет, такой же, может лучше даже.

[subway]design 28.12.2003 20:34

От того, что awstat больше картинок показывает, удобства и смысла не много добавляется :) Кроме того, логи, которые он ведет (в смысле, логи Апача) занимают ~300 Кб за день на моем сайте, когда на моем же сайте один день сайттрекера весит меньше 4 Кб. И интерфейс у меня удобней :)

Artem Brigert 28.12.2003 21:28

Я как то решил скачать логи, нажал на кнопочку и пошёл чайку налить.... пришёл.... 200 Мб =)

Рульная статистика и при этом красиво сделано. Молодец

ильсреальный 28.12.2003 21:47

Стильно. Вообще здорово.

Долго делал?

Nirva 29.12.2003 00:01

аха, даже если так.. ну респекты, однозначно. молодца, здорово сделал. и правда - долго?

Самурай 29.12.2003 00:29

Олег, какая цена сайттрекера?

[subway]design 29.12.2003 00:38

20$

http://subway.net.ru/projects/sitetracker/

Делал 2,5 недели.

ильсреальный 29.12.2003 00:41

Папа! :D

kompadre 29.12.2003 07:18

2 nirva

Это я про себя. Я постоянно так ... Извини если подумал на свой счет.

juggy 29.12.2003 11:45

Олег, старым флешерам дай покопать код?
есть интересные моменты.
А вообще на первый взгляд красиво, удобно и даёт много всего.

Не хватает тех прелестей которые возможны с использованием JS при подсчёте.

Так что, код даш посмотреть?
mitya@alesh.ru

[subway]design 29.12.2003 11:53

В коде ничего сверхестественного нет, поэтому "старые флешеры" могут дать волю фантазии. Понятно, о чем я?
А насчет JS - да, конечно, интересно какого размера мониторы стоят и стоит ли FlashPlayer. Может как-нибудь сделаю такую фичу.

juggy 29.12.2003 12:05

Нет, ты не понял, я говорю, дай просто посмотреть.
то что ничего сверхестественного там нет, это понятно, но почему бы не дать просто так посмотреть? я тоже сейчас пишу статистику, интересуют некоторые моменты.

[subway]design 29.12.2003 12:25

Желаю удачи в написании.

kompadre 29.12.2003 13:28

Джагги, не проси так громко. Ведь другим тоже может захотеться. ;)

Кроме того вот тов. нирва рекламировал awstats.

juggy 29.12.2003 13:34

а что есть awstats он логи небось анализирует?

[subway]design 29.12.2003 13:56

Да. В этом-то и дело.

Nirva 29.12.2003 17:37

именно так, австатс это логаналайзер (не путать с одноименным). а тут. красотища, понимаешь ли.не я вот каждый раз смотрю и все более проникаюсь.

[subway]design 29.12.2003 20:07

Я вообще-то подумывал (и сейчас тоже подумываю) прикрутить в качестве дополнения анализатор логов, ибо на некоторых сервантах логи ведутся независимо от того, читают их или нет. Зачем тогда добру пропадать? :)
Вот на моем сервере логи пожно отключить, но даже включенные хранятся максимум 8 дней (хотя скриптом это можно поправить)

nagash 29.12.2003 20:37

надо различать логи апача и твой вариант...
1 - логи апача ведут ПОЛНЫЕ ЛОГИ сервера...
это значит что туда включаются и обращения КО ВСЕМ файлам а не только к файлам поддерживающим пхп и т.п. полезности
2 - логи апача записывают ОШИБКИ которые твой скрипт даже и увидеть не сможет...

в плане удобства это каждому своё, я не хочу ничего утверждать...
но моё мнение что логи апача намного информативнее и полезнее, не смотря на их размеры...
повторюсь - это моё мнение.

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

[subway]design 29.12.2003 23:00

nagash, я отлично понимаю что такое логи апача. Единственный их недостаток - это размеры. А сверх информативность требуется редко. Но, опять-таки, если сервер независимо от того, хочешь ты или нет, ведет эти логи, то грех не анализировать их в качестве бонуса. Хотя часто логи можно отключать по желанию пользователя, и на ограниченном дисковом пространстве отлично встанет моя статистика.

А крон и мускл - это чисто технические аспекты. Например, то, что сейчас стоит у меня на сервере будет работать с мускулом медленнее, чем просто с файлами. Ибо файлы маленькие и нечего нагружать сервер SQL-запросами. Вот такое моё мнение.

nagash 29.12.2003 23:50

=)))
ок

kompadre 30.12.2003 03:57

Вынужден согласиться что лучше
Цитата:

ну и как итог, мне кажется, что анализатор апачевских логов правильно построенный - хранящий сводную статистику в мюскле - это самый оптимальный вариант.
просто придумать трудно. Мускул - база все таки как ни как, а базы данных придумали ... ну вобщем придумали и все. А статистику брать из них приприятно и "лекко" =).

Но с вариантом крона вынужден не согласиться. Заставлять сервер чрезмерно "пукать" в определенное время (даже заведомо "слабое" относительно количеству юзеров) не есть гуд. имхо, опять-же. Надо как-нибудь нагрузку десцентрировать.

Предлагаю следующюю схему :
(под *никс)

в хттпд.конф прописать
Код:

# Задать формат. Это стандарт который есть в хттпд.конф последних апачей
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
# И собственно делаем "каку" (pipe)
CustomLog "|/usr/bin/al" combined
# Не забыв за"#"оментировать то что было раньше ... на всякий пожарный

Закончив потрошение .конфы примемся за дело /usr/bin/al
Что это? Это файл выполняемый файл через которого пройдут данные изрыгаемые апачем. Эту роль должен исполнять хорошо настроенный и оптимизированный бинарник. Но я его не дам :p Так как "нема" :(

Но, рассмотрим мы такой вариант :
PHP код:

#!/usr/bin/php
<?
        $fh 
fopen ("php://stdin""r");
        
$rows fgets($fh512); // 256 гета + еще столько же        
                                                //Должно типа хватить
        
fclose($fh);
        
$fh fopen ("/var/log/apache/php_generated_log""a");
        
fwrite($fh$rows);
        
fclose($fh);
?>

проверяем все права

/var/log/apache должен получить для такого случая 777 (что-бы создался php_generated_log).
/usr/bin/al - 755

Теперь можно из промта делать /etc/rc.d/rc.httpd restart или как там у вас...

Что-бы проверить фурычит ли изобретение можно воспользоваться тэйлом

tail -f /var/log/apache/php_generated_log

Если всё прошло успешно это должно привести к тому-же результату что и

tail -f /var/log/apache/access_log

только до сией белиберды.

Я думаю к хостингам (смотря к каким, конечно) это прикрутить будет тоже не сложно. CustomLog - такая-же дериктива виртуального хоста. Главное прописать правильно директории и разобраться с правами.

А туду - изменить пхп-файл что-бы он акуратненько вносил в базу тынных ...

Что бы зделать подобное под виндой ... Просто изменить директориии на знакомые (/var/log/apache на с:\Program Files\Apache Group\Apache\logs например). И в CustomLog-e прописать что нибудь типа

CustomLog "|c:\php\php.exe с:\Program Files\Apache Group\Apache\bin\al.php" combined

[subway]design 30.12.2003 11:40

А зачем скрипт-посредник (даже если это "хорошо настроенный и оптимизированный бинарник")? Не проще ли доверить запись лога самому апачу, а при просмотре статистики этот лог открывать? Да, если апач будет хранить только последние 8 дней (как у меня), то скрипты просмотра статистики могут эти логи копировать куда-нибудь к себе в папку. Если нужно, разумеется.

kompadre 30.12.2003 13:20

Поставим точки над Ы =)

По первых - "хорошо настроенный и оптимизированный бинарник" физически не может быть скриптом-посредником.

Во вторых - для статистики лучше всего база данных. Это уж и дураку, извините, понятно. Кстати - бинарник-посредник или скрипт посредник делает то же самое что и твои функции в счетчике записывающие данные в "маленькие" текстовики. При чем он записывает не только удачные запросы. И не только хтмли-реферерры кстати, а изображения всякие, цссы разные ;)

В третих - запись самого лога ты доверяеш как раз апачу. Только при этом перенаправляеш выход данных вместо файла-лога на твой собиратель данных... Он и позволит сэкономить место и записать данные в базу данных.

Кстати, если скрипты будут копировать логи куданибудь себе в папку - представляеш какая папочка получиться? Все эти гигабайты перерывать в поисках статистики - не лучший вариант =)

Повторюсь - имхо надо хранить логи именно в базе данных для скорости оброботки и версатильности. Смоделировать красивую базочку такую и работать с ней.

[subway]design 30.12.2003 15:11

Ага, понял мысль.


Часовой пояс GMT +4, время: 16:44.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.