Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: PowerCounter 3.3.3
 
 автор: cheops   (17.03.2006 в 14:19)   письмо автору
 
 

Это техническая версия, которая устраняет небольшие недочёты в отчётах, исключает удалении неархивных данных за последний месяц, в связи с чем невозможно было просматривать статистику за последний месяц. Кроме этого система поставляется с файлом update_add.sql, который позволяет ввести дополнительны уникальные ключи в архивные таблицы, что позволит предотвратить удвоение статистики за день, неделю и месяц, если для архивирования не используется cron. Если база данных разворачивается из powercounter.sql, выполнять файлы update.sql и update_add.sql нет не обходимости. Если вы считаете, что у вас нет проблемы удвоения статистики можно также не выполнять SQL-инструкции update_add.sql - это не отразится на последующих изменениях системы.

http://www.softtime.ru/info/powercounter30.php

   
 
 автор: Loki   (17.03.2006 в 15:24)   письмо автору
 
   для: cheops   (17.03.2006 в 14:19)
 

опять нигде нет списка измененных файлов.
Как вам идея о применении средств для удаленной разработки? (Я с такими штуками не сталкивался, так что тем интереснее попробовать:). Ну и будет проще контролировать вносимые исправления и дополнения.

   
 
 автор: cheops   (17.03.2006 в 15:58)   письмо автору
 
   для: Loki   (17.03.2006 в 15:24)
 

Я только за, но я тоже с такими штуками не сталкивался, тем более они не больно-то под Windows распространены насколько я понял... А вообще такую бы штуку не плохо иметь, так как у нас проблемы уже при двух разработчиках, а если будет три - коллапс обеспечен :)))

   
 
 автор: Loki   (17.03.2006 в 16:05)   письмо автору
 
   для: cheops   (17.03.2006 в 15:58)
 

так как я тоже не сталкивался, то предлагаю такое избретение велосипеда:
сделать это в веб. под каждый файл проекта завести отдельную строку в БД, куда помещать текст скрипта, комментарии об изменениях и дату обновления. То есть перед выкладкой релиза просто проверяем чтобы он включал все свежие файлы. Легко будет отчитываться какие файлы были изменены, и легко будет писать что именно изменено/поправлено.
Есть идеи как это улучшить?

   
 
 автор: P@Sol   (17.03.2006 в 16:11)   письмо автору
 
   для: Loki   (17.03.2006 в 16:05)
 

у меня есть скрипт под это дело...могу выложить...а вы можите посмотреть и дороботать если он вам подойдет;)

а c++ ставиться какая то прога для ведения проектов....source self - что то в таком духе...она вам не подходит?

   
 
 автор: cheops   (17.03.2006 в 23:16)   письмо автору
 
   для: Loki   (17.03.2006 в 16:05)
 

Дык, наверное лучше если бы такой скрипт сам бы и создавал дистрибутив...

   
 
 автор: Loki   (18.03.2006 в 00:31)   письмо автору
 
   для: cheops   (17.03.2006 в 23:16)
 

Раз уж идея есть - начал набрасывать такой скриптик.
Как будет удобнее: добавлять файлы через форму, либо вставлять текст черед textarea?
Ну и с авторизацией я пока решил не заморачиваться: забил в базу двух пользователей - будем рассчитывать на их аккуратность:)

   
 
 автор: cheops   (18.03.2006 в 13:14)   письмо автору
 
   для: Loki   (18.03.2006 в 00:31)
 

Лучше наверное добавлять через форму... только эта, хорошо бы чтобы эта страсть не сильно много трафика жрала, а то вон в phpMyAdmin с сотней таблиц два раза подумаешь соваться или нет...

   
 
 автор: Trianon   (18.03.2006 в 13:18)   письмо автору
 
   для: cheops   (18.03.2006 в 13:14)
 

А всё потому, наверное, что разработчики phpMyAdmin подобно Loki очень не любят JavaScript.
JavaScript-овая прослойка позволяет уменьшить траффик на два-три порядка. Фактически позволяет довести его до уровня консольного клиента MySql.

   
 
 автор: cheops   (18.03.2006 в 13:21)   письмо автору
 
   для: Trianon   (18.03.2006 в 13:18)
 

Они наоборот его обожают, только используют для других целей :))), собстенно объём страниц в phpMyAdmin помоему в основном JavaScript и создаётся.

   
 
 автор: Trianon   (18.03.2006 в 13:34)   письмо автору
 
   для: cheops   (18.03.2006 в 13:21)
 

Они его не любят, потому, что не умеют им пользоваться.

Если код (т.е. функции) вынести в отдельный файл(ы), загружаемый через <script language=javascript src=code.js></script> один лишь раз, то потом он будет браться из локального кеша.
А в php-коде останется генерировать только что-то вроде
r(1, 'Вася Пупкин', 'vasya@pupkin.ru', );
r(2, '.........','......');
и т.д.

А если состояние процесса хранить в переменных отдельного фрейма, то некоторые запросы можно вообще будет сделать локальными. Т.е. до локального кеша. Тогда от траффика вообще мало что осталось бы.

   
 
 автор: Loki   (18.03.2006 в 15:48)   письмо автору
 
   для: Trianon   (18.03.2006 в 13:34)
 

На самом деле, штука получается простая: файлы хранятся как текст в БД, их можно там редактировать через форму, оставляя комментарии в специальном поле.
При генерации релиза, надо будет указать номер версии. После чего, сгенерируются все файлы, сгенерируется файл changelog.txt из указанных служебных полей и все это будет выдано зип архивом (если найду соотвествующий класс).
Будет отображаться по каждому файлу информация кто и когда его изменил в последний раз.
На первом этапе это все.
Дальше прикручу систему управления проектами, а потом - авторизацию. Тогда можно будет разным разработчикам работать над разными группами проектов. Кроме того, тогда скрипт будет рапортавать о файлах измененных со времени последнего посещения. Мне кажется, должно быть удобно.
Вот собственно и все. После того как это начнет работать с power counter, и после того как этим будет удобно пользоваться, возможно, кто-нибудь присоединится к дальнейшей разработки этой штуки.

[поправлено модератором]

   
 
 автор: cheops   (18.03.2006 в 22:25)   письмо автору
 
   для: Loki   (18.03.2006 в 15:48)
 

Патчи это хорошо. Было бы неплохо чтобы система одинаково хорошо себя чувствовала на локальной машине и на сервере и оперировала md5 и датой последнего обновления, которые в большинстве случаев легко можно проверить (если в этом есть необходимость).

   
 
 автор: cheops   (18.03.2006 в 22:29)   письмо автору
 
   для: Trianon   (18.03.2006 в 13:34)
 

Нам в принципе не монструозную программу нужно, а наменее затратный способ создания патчей. Т.е. имеется версия 3.0.0 у человека и применяя набор патчей он бы мог довести её до 3.4.6, как сейча в Linux... если он не хочет использовать патчи - просто качает полный архив версии 3.4.6. Вот эти патчи нужно бы генерировать автоматически, так как вся загвоздка в них - когда их делают и внедряют люди, идёт море новых ошибок.

   
 
 автор: Loki   (18.03.2006 в 23:11)   письмо автору
 
   для: cheops   (18.03.2006 в 22:29)
 

Систему храниния и учета я вроде как набросал...
Теперь уперся в формирование версии: как сделать zip со структурой папок?
То есть для файлов класс везде лежит (уж не знаю заработает ли у меня), а как создавать сами папки? или релизы вытягивать по фтп, а не одним файлом... может есть у вас мысли на примете?

   
 
 автор: cheops   (19.03.2006 в 13:03)   письмо автору
 
   для: Loki   (18.03.2006 в 23:11)
 

zip, конечно было бы классно, но уж больно дело это накладное и не надёжное, может мы свой формат будем использовать для упаковки файлов - ведь такой файл можно скормить системе PowerCounter, в который встроить декодировщик и в результате у нас система сама всё будет обновлять?

   
 
 автор: Loki   (19.03.2006 в 14:41)   письмо автору
 
   для: cheops   (19.03.2006 в 13:03)
 

Тогда предлагайте систему.
Можно засунуть в gzip - работает стандартными средствами. Но опять же, нудно создавать структуру каталогов (ну либо создавать некий индексный файл, в котором будет прописано какой файл во что переименовать и куда поместить). Ну и опять же: полный дистрибутив придется делать подобным образом. В общем, стандартный архиватор был бы очень кстати. А в будущем можно было бы использовать эту систему при работе с несколькими проектами.

   
 
 автор: cheops   (19.03.2006 в 21:18)   письмо автору
 
   для: Loki   (19.03.2006 в 14:41)
 

Я тут как-то Евгению Петрову предлагал механизм: в качестве ключа имя файла (вместе с путём) - содержимое файла в качестве значения - массив сериализуем в строку - строку архивируем gzip. С тех пор что-то ничего более элегантного в голову не пришло...

   
 
 автор: Trianon   (19.03.2006 в 17:37)   письмо автору
 
   для: Loki   (18.03.2006 в 23:11)
 

zip со структурой папок это просто zip, в котором имена файлов лежат вместе с путями.

   
 
 автор: cheops   (19.03.2006 в 21:16)   письмо автору
 
   для: Trianon   (19.03.2006 в 17:37)
 

Вопрос в том, как бы его сгенерировать средствами PHP, при этом сами совершить минимальную работу :)))

   
 
 автор: Loki   (19.03.2006 в 22:22)   письмо автору
 
   для: cheops   (19.03.2006 в 21:16)
 

Уже сделал.
Куда вам высдать данные для доступа?

   
 
 автор: cheops   (19.03.2006 в 23:01)   письмо автору
 
   для: Loki   (19.03.2006 в 22:22)
 

Давайте на simdyanov @ softtime.ru...

PS А системой сложно пользоваться? :)))

   
 
 автор: Loki   (20.03.2006 в 00:11)   письмо автору
 
   для: cheops   (19.03.2006 в 23:01)
 

Думаю, после месяца стажировки, вас можно будет допустить до пользования:)

Данные отправил. Напишите о впечатлениях.

   
 
 автор: Artem S.   (20.03.2006 в 00:17)   письмо автору
 
   для: Loki   (20.03.2006 в 00:11)
 

А вы не хотите посмотреть в сторону cvs ?
http://alexm.here.ru/cvs-ru/

   
 
 автор: Loki   (20.03.2006 в 09:52)   письмо автору
 
   для: Artem S.   (20.03.2006 в 00:17)
 

Прежде чем писать скрипт, я скачал пару подобных штук. Впечатление оставили гнетущее: размерами, сложностью и функциональностью. Примерно как карьерный самосвал на городских улицах. Может мне просто неудачные попались.
Нечто вроде CVS у нас уже существует: у меня на машине стоят две версии, изменения в которых фиксируются за довольно продолжительный период времени. На сайте у меня крутятся две рабочих версии локальных. Полагаю, что у Cheos'a ситуация аналогичная. Нам просто нужно было место, где можно было бы держать самые свежие рабочие файлы. Плюс механизм эти фалы отслеживающий, формирующий релизы или апдейты версий. Мне кажется, что у меня получилось... Но дождемся мнения второго разработчика:)

   
 
 автор: Trianon   (20.03.2006 в 11:08)   письмо автору
 
   для: cheops   (19.03.2006 в 21:16)
 

Зависит от того, насколько мало хочется работать :) Примерно так, как в аттаче.

   
 
 автор: Loki   (20.03.2006 в 11:17)   письмо автору
 
   для: Trianon   (20.03.2006 в 11:08)
 

Такой класс я рассматривал. Но чем-то он меня не устроил... в итоге, попался мне в руки немного другой. По утверждениям разработчиков, умеет работать с отдельными файлами в архиве... но я его использую довольно тупо:)

   
 
 автор: Trianon   (20.03.2006 в 11:24)   письмо автору
 
   для: Loki   (20.03.2006 в 11:17)
 

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

   
 
 автор: Loki   (20.03.2006 в 11:29)   письмо автору
 
   для: Trianon   (20.03.2006 в 11:24)
 

Брал вот тут:
http://www.phpconcept.net/pclzip/index.en.php

К сожалению, user guide у них только онлайновый, потому особо разбираться и не стал.

   
 
 автор: P@Sol (не дома)   (17.03.2006 в 19:22)
 
   для: cheops   (17.03.2006 в 14:19)
 

а статистика запросов исправлена?

   
 
 автор: cheops   (17.03.2006 в 23:14)   письмо автору
 
   для: P@Sol (не дома)   (17.03.2006 в 19:22)
 

А что именно...

   
 
 автор: P@Sol (не дома)   (18.03.2006 в 09:21)
 
   для: cheops   (17.03.2006 в 23:14)
 

там статистика за один день? или за все время?

   
 
 автор: cheops   (18.03.2006 в 13:15)   письмо автору
 
   для: P@Sol (не дома)   (18.03.2006 в 09:21)
 

Пока за одни день - за всё время можно по почте получить.

   
 
 автор: kievigor   (18.03.2006 в 04:16)   письмо автору
 
   для: cheops   (17.03.2006 в 14:19)
 

Хочу прокомментировать обновления.
На глав ной странице счетчика, как мне кажется, следует оторвать шапку с подразделами от таблицы, как это сделано в разделе (Время сеанса), но зазор можно сделать немного меньше. На мой вкус так будет красивее, да и синюю заливку можно убрать. И подобным образом переместить меню подразделов во всех разделах, убрав пункты из основного меню cлева и поместив их подобным образом над таблицами.

Мне кажется что главной страницей счетчика надо сделать раздел (Хосты и Хиты), мне кажется, что это первостепенной важности информация, которая может заинтересовать сразу после захода.

Что касается той страницы которая сейчас главная. Мне не нравиться что там смешанная статистика и по роботам и по людям. Информация и та и та важна, но как ее правильно сейчас воспринимать не понятно. Если по роботам еще можно как то посмотреть статистику отдельно, то по людям не как. Предлагаю либо сделать еще один аналогичный раздел по людям, или отказаться от общей статистики в этом разделе и оставить только посещения людей (роботов можно посмотреть в Роботах и так). А еще лучше сделать сверху переключатель (Общая/Люди/Роботы) и загружать по умолчанию с Людьми.

И еще по поводу отправки информации на мейл. Я давно уже говорю, что надо делать страничку с настройками счетчика в конце меню. Как мне кажется функцию отправки на мейл надо переместить туда, вместе с другими полезными возможностями, которые сейчас надо прописывать вручную в коде.

Очень жаль, что в нынешней версии исчезли имена ip адресов. Сами ip мало о чем говорят, разве что их количество.

   
 
 автор: cheops   (18.03.2006 в 13:19)   письмо автору
 
   для: kievigor   (18.03.2006 в 04:16)
 

Понятно, в принципе замечания дельные.

>Очень жаль, что в нынешней версии исчезли имена ip адресов.
>Сами ip мало о чем говорят, разве что их количество.
Хм... проверьте не в admin/config.php значение переменной HOST_BY_ADDR - оно не 0? Дело в том, что у многих пользователей задержки большие при формировании отчётов, поэтому по умолчанию динамические хосты отключены, но их можно включить обратно присвоив константе HOST_BY_ADDR значение 1.

   
 
 автор: kievigor   (18.03.2006 в 13:32)   письмо автору
 
   для: cheops   (18.03.2006 в 13:19)
 

Спасибо за подсказку. А это еще один момент в пользу создания страницы с настройками счетчика.

   
 
 автор: cheops   (18.03.2006 в 13:34)   письмо автору
 
   для: kievigor   (18.03.2006 в 13:32)
 

Согласен не дело пользователей конфигурационные файлы править - страницу настроек обязательно введём.

   
 
 автор: PVasili   (20.03.2006 в 10:16)   письмо автору
 
   для: cheops   (18.03.2006 в 13:34)
 

Почему бы нек добавить базу http://www.maxmind.com к ней есть прекрасно описанный api http://www.maxmind.com/download/geoip/api//download/geoip/api/ да и саму базу найти не сложно :)

   
 
 автор: Loki   (20.03.2006 в 10:25)   письмо автору
 
   для: PVasili   (20.03.2006 в 10:16)
 

Так он денег стоит.. За деньги есть и русскоязычные сервисы...
А ссылка не работает.

   
 
 автор: PVasili   (20.03.2006 в 10:39)   письмо автору
 
   для: Loki   (20.03.2006 в 10:25)
 

http://www.maxmind.com/download/geoip/api ошибочка
там ест бесплатная по странам, да и саму базу несложно найти ;)
А какие русские? Рамблер кнопку ставить? Тогда зачем нужна своя статистика?

   
 
 автор: Loki   (20.03.2006 в 11:14)   письмо автору
 
   для: PVasili   (20.03.2006 в 10:39)
 

Так она не своя:)
Это как раз бесплатная версия одного из российских сервисов (ссылку на него забыл - где-то в форуме приводил:).
что касается maxmind, то зависеть от внешней базы не очень здорово: в любой момент этот сервис могут прикрыть (а учитывая что на сайте просят ввести код с картинки, сдается мне, что уже прикрыли).
В любом случае, лично мне этот сервис не нужен. А то что есть, было прикручено лишь по той причине, что база мне случайно попалась:)

   
 
 автор: P@Sol   (20.03.2006 в 11:22)   письмо автору
 
   для: cheops   (17.03.2006 в 14:19)
 

при переходе с версии 3.3.2 надо update.sql выполнять?
а то у меня

Ошибка
SQL-запрос: 

ALTER TABLE system_arch_num_searchquery ADD number_mail INT NOT NULL 

Ответ MySQL: 

#1060 - Duplicate column name 'number_mail' 


хотя никакого столбца такого нет...

   
 
 автор: cheops   (20.03.2006 в 14:29)   письмо автору
 
   для: P@Sol   (20.03.2006 в 11:22)
 

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

PS Тема очень длинная поэтому закрываю, для продолжения обсуждения лучше открыть новую тему.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования