myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему

> Информация По Nick&ip

Теги
Нет тегов для показа
Nickolya
сообщение 20.4.2009, 22:18
Сообщение #21


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Перезалил свой скрипт, таблицы удалить если остались от прежнего скрипта! + добавил в просмотр инфы по нику используемые за все время работы скрипта IP-адреса пользователя, а не только за установленные сессии.

Цитата
------------------------------------------------------------------------------------------------------------------------------------------------------
¦ Информация о пользователе: Nickolya2 ( пользователь на хабе )
------------------------------------------------------------------------------------------------------------------------------------------------------
¦ Общая информация:
¦ Имя в базе данных: nickolya2
¦ Юзер: Nickolya2
¦ IP: 127.0.0.1
¦ Тег: <FlylinkDC++ V r365),M:A,H:2/0/1,S:10>
¦ Описание:
¦ Email: [отсутствует]
¦ Клиент: FlylinkDC++
¦ Версия клиента: (r365)
¦ Активный режим: Да
¦ Оператор: Нет
¦ Шара: 175,35 ГБ (188284275475 Б)
¦ Профиль: Незарегистрированный пользователь (-1)
¦ Хабы: 3
¦ Слоты: 10
------------------------------------------------------------------------------------------------------------------------------------------------------
¦ История сессий пользователя (лимит установлен в 30 записей):
¦_ 1 127.0.0.1 с: 22:52:25 20-04-09* до: 22:52:57 20-04-09*
¦_ 2 127.0.0.1 с: 22:52:57 20-04-09* до: 22:58:43 20-04-09
¦_ 3 127.0.0.1 с: 22:58:44 20-04-09 до: 22:58:45 20-04-09
¦_ 4 127.0.0.1 с: 22:59:58 20-04-09 до: 23:00:53 20-04-09*
¦_ 5 127.0.0.1 с: 23:00:53 20-04-09* до: 23:01:21 20-04-09*
¦_ 6 127.0.0.1 с: 23:01:21 20-04-09* до: текущее время (на хабе)
¦ * Включение или выключение скрипта
------------------------------------------------------------------------------------------------------------------------------------------------------
¦ Использованные ником IP-адреса:
¦_ 127.0.0.1: использовался 6 раз, последнее время входа на хаб - 23:01:21 20-04-09
------------------------------------------------------------------------------------------------------------------------------------------------------
Go to the top of the page
+Quote Post
Setuper
сообщение 20.4.2009, 22:36
Сообщение #22


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Чтобы просмотреть содержимое таблицы в MySQLAdministrator нужно щёлкнуть по названию правой кнопкой и выбрать "Edit Table Data"
После этого mysql обозреватель автоматически сформирует нужный запрос для просмотра всего содержимого указанной таблицы
Go to the top of the page
+Quote Post
Otshelnik-Fm
сообщение 20.4.2009, 22:50
Сообщение #23


Я коварный Санта Клаус
******

Группа: Пользователи
Сообщений: 523
Регистрация: 4.11.2008
Из: Саратов
Пользователь №: 985
Спасибо сказали: 54 раза




так там пусто - вот и подумал что не там гляжу:

и для сравнения таблица статистики:
Прикрепленные файлы
Прикрепленный файл  11.jpg ( 72.82 килобайт ) Кол-во скачиваний: 155
Прикрепленный файл  12.jpg ( 121.13 килобайт ) Кол-во скачиваний: 162
 
Go to the top of the page
+Quote Post
Wariner
сообщение 20.4.2009, 22:53
Сообщение #24


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




как так может быть?!

ладно завтра всё проверю)))
Go to the top of the page
+Quote Post
Nickolya
сообщение 20.4.2009, 23:20
Сообщение #25


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Перезалил еще раз... Думалось мне библиотека сама экранирует одинарную кавычку, угу, размечтался... Поправил в скрипте это, чего и всем советую ;) Тестируйте big_smile.gif
Go to the top of the page
+Quote Post
Setuper
сообщение 20.4.2009, 23:40
Сообщение #26


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Ага. Проблема с кавычкой существует в программах, использующих базы данных довольно давно. Экранировать её нужно всегда big_smile.gif
Go to the top of the page
+Quote Post
Otshelnik-Fm
сообщение 21.4.2009, 0:12
Сообщение #27


Я коварный Санта Клаус
******

Группа: Пользователи
Сообщений: 523
Регистрация: 4.11.2008
Из: Саратов
Пользователь №: 985
Спасибо сказали: 54 раза




Nickolya - а можно сделать так:

------------------------------------------------------------------------------------------------------------------------------------------------------
¦ История сессий пользователя (лимит установлен в 30 записей):
¦_ 1 10.12.1.3 с: 23:43:35 20-04-09* до: 01:04:29 21-04-09 - 1 час 45 минут
¦_ 2 10.12.1.3 с: 01:04:31 21-04-09 до: текущее время (на хабе)
¦ * Включение или выключение скрипта
------------------------------------------------------------------------------------------------------------------------------------------------------
- 2 дня 37 минут и т.п.
так было бы наглядней
Go to the top of the page
+Quote Post
Nickolya
сообщение 22.4.2009, 12:41
Сообщение #28


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Можно, все можно big_smile.gif Делается так: строку
Код
        sMsg = sMsg.."¦_ "..sSp..i.."\t"..tCurIPsData[1].."\t\t"..tLang.From..": "..sForm..sOnStartup.."\t"..tLang.To..": "..sTo..sOnExit..sRn
меняем на
Код
        sMsg = sMsg.."¦_ "..sSp..i.."\t"..tCurIPsData[1].."\t\t"..tLang.From..": "..sForm..sOnStartup.."\t"..tLang.To..": "..sTo..sOnExit.."\t - "..GetNormalTime(((tCurIPsData[4] ~= 0 and tCurIPsData[4]) or os.time()) - tCurIPsData[3])..sRn


и в самый конец добавляем вот эту хорошую функцию:
Код
function GetNormalTime(s)
    s=tonumber(s) or 0
    local r=""
    if s>=31104000 then r=math.floor(s/31104000).." г. " s=math.fmod(s,31104000) end
    if s>=2592000 then r=r..math.floor(s/2592000).." мес. " s=math.fmod(s,2592000) end
    if s>=86400 then r=r..math.floor(s/86400).." д. " s=math.fmod(s,86400) end
    if s>=3600 then r=r..math.floor(s/3600).." ч. " s=math.fmod(s,3600) end
    if s>=60 then r=r..math.floor(s/60).." мин. " s=math.fmod(s,60) end
    return r..s.." сек."
end


Получаем:
Цитата
¦ История сессий пользователя (лимит установлен в 30 записей):
¦_ 1 192.168.0.10 с: 12:13:02 22-04-09* до: 12:13:34 22-04-09 - 32 сек.
¦_ 2 192.168.0.10 с: 12:13:35 22-04-09 до: 12:14:40 22-04-09* - 1 мин. 5 сек.
¦_ 3 192.168.0.10 с: 12:14:41 22-04-09* до: 12:15:32 22-04-09* - 51 сек.
¦_ 4 192.168.0.10 с: 12:15:32 22-04-09* до: 12:16:04 22-04-09* - 32 сек.
¦_ 5 192.168.0.10 с: 12:16:04 22-04-09* до: 12:27:24 22-04-09* - 11 мин. 20 сек.
¦_ 6 192.168.0.10 с: 12:27:24 22-04-09* до: 12:28:44 22-04-09* - 1 мин. 20 сек.
¦_ 7 192.168.0.10 с: 12:28:45 22-04-09* до: 12:29:56 22-04-09* - 1 мин. 11 сек.
¦_ 8 192.168.0.10 с: 12:29:56 22-04-09* до: текущее время (на хабе) - 5 сек.
¦ * Включение или выключение скрипта


Для особо ленивых прилагаю файлик, из поста выше его удаляю. И напоминаю что таблицы надо удалить если вы пользовались старой версией, без записей всех ip для ника big_smile.gif
Прикрепленный файл  UserInfo_v0.2___by_Nickolya_____MySQL_____API_2___.lua ( 19.84 килобайт ) Кол-во скачиваний: 98


Еще забыл спросить, в скрипте я храню данные в формате TEXT, а потом уже используя конструкцию в духе
Код
    local tNeedUserData = loadstring("return "..row.sData)()
получаю таблицу, получается как бы бд за место текстовых файлов с доп. возможностями выборки и сортировки, как вам такая реализация, в том же сравнении со скриптом Ильи (варинера) и в духе оптимизованности и рациональности?!


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 22.4.2009, 14:22
Сообщение #29


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




если разбить параметры по столбцам, открывается больше возможностей для сортировки используя лишь БД.
Go to the top of the page
+Quote Post
Setuper
сообщение 22.4.2009, 19:16
Сообщение #30


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Что-то я не уловил ход мысли...
Что мешало написать так:
Код
local tNeedUserData = row.sData
??
Go to the top of the page
+Quote Post
Nickolya
сообщение 22.4.2009, 19:34
Сообщение #31


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Помешало то, что данные хранятся в виде строки, но это на самом деле таблица переведенная в строку. Для изменения данных таблица извлекается в текстовом виде, приводится к виду таблицы, затем изменяется, переводится опять в текст и записывается... big_smile.gif Конечно не думаю что это самый оптимальный способ работы с бд, но так было проще сделать. Не ругайте строго, если не понятно - посмотри скрипт.
Go to the top of the page
+Quote Post
Setuper
сообщение 22.4.2009, 19:49
Сообщение #32


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Всё понял, что сделано big_smile.gif
В данном случае ты пытаешься ограничиться использованием базы данных только в качестве хранилища, однако, бд можно использовать и для упрощения программирования и сортировки, то есть отдавать эти задачи базе данных, а не пытаться использовать для этого lua. База данных намного эффективнее будет справляться с этими задачами.
Go to the top of the page
+Quote Post
Otshelnik-Fm
сообщение 26.4.2009, 22:57
Сообщение #33


Я коварный Санта Клаус
******

Группа: Пользователи
Сообщений: 523
Регистрация: 4.11.2008
Из: Саратов
Пользователь №: 985
Спасибо сказали: 54 раза




У нас провайдер дает динамические ип бесплатно (а статические за 58 р в месяц) - можно скрипт инфы по никам добавить строчкой: "Показать статические IP"? . - по этой команде в чат выводился список пользователей с постоянным ip.

Информацию брать основываясь за период времени- например неделю (не знаю сколько сессия одного ip держится) и выводить "постоянные IP". Но если есть юзер с временем меньше недели - но с одним ip - то выводить "вероятно постоянный ip"

Можно? Ну если это еще кому нибудь нужно кроме меня...


Nikolya - скрипт работает хорошо - почему бы не перенести его в готовые mysql?
Go to the top of the page
+Quote Post
Otshelnik-Fm
сообщение 1.5.2009, 19:03
Сообщение #34


Я коварный Санта Клаус
******

Группа: Пользователи
Сообщений: 523
Регистрация: 4.11.2008
Из: Саратов
Пользователь №: 985
Спасибо сказали: 54 раза




неделя работы скрипта от Nikolya v.0.2 - памяти съедает, думаю много: 1311 кб - можно туда добавить автоочистку? и почему такая нагрузка?

и пост выше - можно дополнить этим функционалом?
Go to the top of the page
+Quote Post
TiGRpp
сообщение 8.1.2011, 6:09
Сообщение #35


Продвинутый участник
****

Группа: Пользователи
Сообщений: 162
Регистрация: 19.8.2009
Из: Москва
Пользователь №: 4 201
Спасибо сказали: 24 раза




Цитата(OtshelnikFm @ 1.5.2009, 20:03) *
неделя работы скрипта от Nikolya v.0.2 - памяти съедает, думаю много: 1311 кб - можно туда добавить автоочистку?

Всех с Новым Годом и Рождеством.
Скрипт полезный, альтернативы не нашел. Установил его на 2-х хабах.
Через сутки работы:
  • Использование памяти 7114 kB при общем обьеме базы 26.4 МБ, пик юзеров – 7500. Статистика базы данных: 23177 ников, 23882 IP-адресов
  • 2737 kB – 9.7 МБ – 2500...8138 ников, 9049 IP-адресов
  • и произошла одновременная ошибка на 2-х хабах:
      (хабы работают на разных компьютерах, каждый со своим ip-адресом и в разных помещениях).
      Очевидно в информации юзера есть нечто, не воспринимаемое скриптом.
      Ошибка отключает скрипт. Тестируется на PtokaX 0.4.1.2 под Ubuntu 10.04.
    Код
    [12:05:28] <Information> *** В скипте произошла ошибка: ...erInfo_v0.2___by_Nickolya_____MySQL_____API_2___.lua:555: attempt to index field 'sDescription' (a nil value)
    [12:05:43] <Кинолента> *** В скипте произошла ошибка: ...erInfo_v0.2___by_Nickolya_____MySQL_____API_2___.lua:555: attempt to index field 'sDescription' (a nil value)

    Еще через сутки:
    Код
    [11:19:50] <Information> *** В скипте произошла ошибка: ...:555: ...
    [11:20:06] <Кинолента> *** В скипте произошла ошибка: ...:555: ...
Третьей ошибки пока не было.
Накапливается информация в памяти. Через 34 часа после перезапуска скрипта (обнуления памяти) и 2,5 суток сбора данных:
  • 11508 kB – 66.9 МБ – 7500...47899 ников, 66527 IP-адресов. Начались лаги.
  • 3813 kB – 23.8 МБ – 2500...16350 ников, 24396 IP-адресов.
Очистка аккаунтов в скрипте регистраций стирает собранную по ним информацию в БД.

Пока уменьшил iUserVisitsLimit до трех и выключил bUpdateDataOnMyInfo. Однако это полумера…необходима автоочистка памяти по времени или по достижении обусловленного обьема, или по выполнении lua-действий.
То есть используем БД как хранилище, освобождая память и процессор от лишней нагрузки.


Спасибо сказали:
Go to the top of the page
+Quote Post
Saymon21
сообщение 9.1.2011, 22:51
Сообщение #36


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




ну и сразу при запуске скрипта
<[BOT]HubSecurity> *** В скипте UserInfo_v0.2__byNickolya____MySQL___API2___.lua произошла ошибка: ...erInfo_v0.2__byNickolya____MySQL___API2___.lua:270: attempt to index local 'cur' (a nil value)
Go to the top of the page
+Quote Post

2 страниц V  < 1 2
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts Topic has attachmentsStatistics login\logout IP's and Nick's
Статистика входа/выхода по нику и IP
4 Kinsler 7 080 17.9.2017, 20:40 Посл. сообщение: Kinsler
No New Posts Topic has attachmentsStatistics login\logout IP's and Nick's
1 Kinsler 5 115 14.8.2017, 13:14 Посл. сообщение: dimetro
No New Posts Topic has attachmentsNick Protect
API2 | Защита ников от подделки
13 alex82 16 737 15.10.2016, 17:04 Посл. сообщение: Karumo
No New Posts Topic has attachmentsNick Protect
Скрипт защиты ников от подделки методом подмены символов
3 Saymon21 6 462 15.8.2011, 14:18 Посл. сообщение: Saymon21
No New Posts Topic has attachmentsChange Nick
Eximius
3 Артём 7 709 13.11.2010, 11:58 Посл. сообщение: DEN 007
No New Posts Topic has attachmentsView Nick and IP
API2 | Просмотреть Ник и IP пользователя при входе.
8 Invisible 12 992 31.10.2009, 1:27 Посл. сообщение: Санёк
Closed Информация при входе
4 Goblin 8 242 16.6.2009, 16:09 Посл. сообщение: Wariner
No New Posts Информация об IP в чате
4 skonda 9 167 10.6.2009, 2:20 Посл. сообщение: Alexey
No New Posts Hex Hub Фугкция Информация По Ip
скрипт под PtokaX 4.1.1
3 apelsin 7 268 18.4.2009, 14:49 Посл. сообщение: alex82
No New Posts Topic has attachmentsChange Nick
API2 | Смена ника
11 rus.region78 17 735 29.1.2009, 21:19 Посл. сообщение: FallenAngel

 



RSS Сейчас: 29.3.2024, 2:56