morfey Posted December 9, 2009 Posted December 9, 2009 Эпилог Freebsd 7.0 Stargazer 2.4.01 IPFW IPNAT Здравствуйте. Последний месяц наблюдаются запросы типа: Query INSERT INTO detailstat_12_2009 SET login='west',day=9,startTime='19:30:00',endTime='19:49:09',IP='58.252.160.114', dir=0, down=126, up=309, cash=0.000000, sess_id='126036851 IP='58.252.160.114' - тут непонятно, т.к. ИП у этого юзера другой, а в базу пишет сотнями таких запросов с разными ИП для одного юзера при отключении-включении авторизатора ( я заметил но не 100% что при включении авторизатора ). При ~ 200 человек статистика (detailstat_MM_YYYY) за месяц занимает около 7гиг. Бывает когда включаешь авторизатор он говорит что онлай, все гут типо, но скрипт на серваке не срабатывает и правила в IPFW не создаются, а забивает mysql этими запросами (Не пойму почему столько разныъ ИП на одного аккаунта!!!). Такое чувство что ИП перебираются какимто скриптом (10.20.18.20,10.200.16.23) . ТОесть айпи самые разные разных подсетей. Мой серв взбесился !!!)))) Помогите пожалуйста разобратся
nightfly Posted December 9, 2009 Posted December 9, 2009 Ничего что это айпишка куда обращается юзер "сотнями"? Хуизните чтоли. Итого либо вирусня либо торренты. ПС добавьте индекс по логину.
morfey Posted December 9, 2009 Author Posted December 9, 2009 Тут неделями хуизить нужно, та и смысл. Индекс в таблицу mysql?
morfey Posted December 9, 2009 Author Posted December 9, 2009 ~70000 записей для 1-го юзера за пару секунд, вирус у него? Т.к. торент исключается, за пол месяца и гига не выкачано
nightfly Posted December 9, 2009 Posted December 9, 2009 Индекс в таблицу mysql? Нет блин - на конверт почтовый. Очевидно что в таблицу. Селекты же вы таки делаете where `login`= что логично предположить было бы. ~70000 записей для 1-го юзера за пару секунд, вирус у него? закономерно для хорошего ботнета а вобще tcpdump вам в руки и барабан на шею - кто мешает посмотреть что там реально ходит?
morfey Posted December 10, 2009 Author Posted December 10, 2009 Взял барабан, поставил запись статистики раз в час, юзеру позврнил сказал чтоб антивирь поставил, все гут, за сутки 68 метров
Колян Posted December 10, 2009 Posted December 10, 2009 Гм) У меня тут другая трабла, видать с новой версией мускула стг не хочет дружить. /var/log/messages Dec 10 17:02:52 billing stargazer: error: 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.11.2.20' at line 1' query: 'INSERT INTO detailstat_12_2009 SET login='kanistra',day=10,startTime='16:00:00',endTime='17:02:49',IP='10.11.2.20' Dec 10 17:02:52 billing stargazer: The inquiry is repeated 3 times: INSERT INTO detailstat_12_2009 SET login='kanistra',day=10,startTime='16:00:00',endTime='17:02:49',IP='10.11.2.20 Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.11.2.20' at line 1 Dec 10 17:03:42 billing stargazer: mysql_store Use MYSQL TCP port Dec 10 17:03:42 billing stargazer: Mysql Reconnect -- OK Dec 10 17:03:42 billing stargazer: error: 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.10.2.159' at line 1' query: 'INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159' Dec 10 17:03:42 billing stargazer: mysql_store Use MYSQL TCP port Dec 10 17:03:42 billing stargazer: Mysql Reconnect -- OK Dec 10 17:03:42 billing stargazer: error: 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.10.2.159' at line 1' query: 'INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159' Dec 10 17:03:42 billing stargazer: mysql_store Use MYSQL TCP port Dec 10 17:03:42 billing stargazer: Mysql Reconnect -- OK Dec 10 17:03:42 billing stargazer: error: 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.10.2.159' at line 1' query: 'INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159' Dec 10 17:03:42 billing stargazer: The inquiry is repeated 3 times: INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159 Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.10.2.159' at line 1 /var/log/stargazer.log 2009-12-10 17:00:06 -- Cannot write detail stat for user shv47k163. (SessionID: 1260427371-shv47k163-2f742060s127a238bcdd) 2009-12-10 17:00:06 -- Couldn't insert data in WriteDetailedStat: 2009-12-10 17:01:01 -- Cannot write detail stat for user len202k714. (SessionID: 1260421132-len202k714-f19213cd35e819cbeb16) 2009-12-10 17:01:01 -- Couldn't insert data in WriteDetailedStat: 2009-12-10 17:02:12 -- Cannot write detail stat for user len141k41. (SessionID: 1260440960-len141k41-89cec3413889488e1798) 2009-12-10 17:02:12 -- Couldn't insert data in WriteDetailedStat: 2009-12-10 17:02:52 -- Cannot write detail stat for user kanistra. (SessionID: 1260447986-kanistra-aef28e306ce7b838d7c8) 2009-12-10 17:02:52 -- Couldn't insert data in WriteDetailedStat: 2009-12-10 17:03:42 -- Cannot write detail stat for user gd3k42. (SessionID: 1260426479-gd3k42-bacd5bc472453e03204c) 2009-12-10 17:03:42 -- Couldn't insert data in WriteDetailedStat: Ну и версии приложений: 2009-12-05 18:22:47 -- Stg v. Stg 2.405.25.08.08(CourierPlusE) 2009-12-05 18:22:47 -- Message queue created successfully. msgKey=5555 msgID=655 2009-12-05 18:22:47 -- Timer thread started successfully. 2009-12-05 18:22:47 -- Storage plugin: mysql_store v.0.0 . Loading successfull 2009-12-05 18:22:47 -- monitorDir = monitoring = 0 2009-12-05 18:22:51 -- Users started successfully. 2009-12-05 18:22:51 -- Traffcounter started successfully. 2009-12-05 18:22:51 -- Module: 'bpf_cap v.1.0'. Start successfull. 0 2009-12-05 18:22:51 -- Module: 'InetAccess authorizator v.1.2'. Start successful 2009-12-05 18:22:51 -- Module: 'Always Online authorizator v.1.0'. Start success 2009-12-05 18:22:51 -- Module: 'Stg configurator v.0.07'. Start successfull. 220 2009-12-05 18:22:51 -- Stg started successfully. 2009-12-05 18:22:51 -- +++++++++++++++++++++++++++++++++++++++++++++ [root@billing /home/kolian]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 13943 Server version: 5.1.39 Source distribution [root@billing /home/kolian]# uname -a FreeBSD billing.kanivnet 8.0-PRERELEASE FreeBSD 8.0-PRERELEASE #0: Sun Nov 22 10:58:48 EET 2009 kolian@billing.kanivnet:/usr/src/sys/i386/compile/BILLING i386 Не хотел создавать тему, дабы не флудить.
morfey Posted December 10, 2009 Author Posted December 10, 2009 Тоже проскакивает INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159' Синтаксис правильный, глюк в стг?
nightfly Posted December 10, 2009 Posted December 10, 2009 Структуру таблички посмотрите. Там для всех полей кроме `IP` и `login` должны быть дефолтные значения "0", также как для startTime и endTime должны быть NULL. Вобще иногда полезно поисполнять сабжевые кверизы ручками чтобы увидеть где какая собака рылась
Колян Posted December 10, 2009 Posted December 10, 2009 Но ведь на старом серваке работало Мало того, таблицу-то сам СТГ создает. Кстати, вілетает он после такого через дня два мучений.
nightfly Posted December 10, 2009 Posted December 10, 2009 1. на той же версии? 2. я знаю, он их и без индексов создает - все поправимо 3. кажись не оттуда Текущий конфиг: Stg v. 2.406-rc1 cap_nf FreeBSD 6.4-RELEASE Mysql 5.1.28-rc полет нормальный около 1.5 лет - без единого вылета. ПС чуть не забыл - падать он может по max_connections
Колян Posted December 11, 2009 Posted December 11, 2009 Что поменялось - так это версия фряхи и мускула, все остальное то же, даже конфиг мускуля тот же.
madf Posted December 11, 2009 Posted December 11, 2009 Dec 10 17:03:42 billing stargazer: error: 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''10.10.2.159' at line 1' query: 'INSERT INTO detailstat_12_2009 SET login='gd3k42',day=10,startTime='16:00:00',endTime='17:03:19',IP='10.10.2.159' Если посмотреть внимательно, то после IP нет закрывающей кавычки. Та которая присутстсвует закриывает открытую после query.
Колян Posted December 11, 2009 Posted December 11, 2009 Странно, но как оно раньше работало? Я заметил... Спасбо, буду разбираться!
rem_lex Posted December 17, 2009 Posted December 17, 2009 Гм) У меня тут другая трабла, видать с новой версией мускула стг не хочет дружить. ... /var/log/stargazer.log 2009-12-10 17:00:06 -- Cannot write detail stat for user shv47k163. (SessionID: 1260427371-shv47k163-2f742060s127a238bcdd) 2009-12-10 17:00:06 -- Couldn't insert data in WriteDetailedStat: Ну и версии приложений: 2009-12-05 18:22:47 -- Stg v. Stg 2.405.25.08.08(CourierPlusE) Не хотел создавать тему, дабы не флудить. в этой модификации биллинга в модуле MySQL содержится по меньшей мере 2 ошибки, которые дают такой результат чуть выше, товарищ madf, правильно заметил, что что нет кавычки, а самое плохое, что там внутри еще не правильный цикл стоит, точнее в скрипте их два таких Mysql 5.1.28-rc ПС чуть не забыл - падать он может по max_connections категорически против! max_connections никак не влияет на работу СТГ, если больше ничего не обращается к мускулу, то max_connections можно поставить =1 и все будет работать! а вот насчет версии, то при переходе на 5,1,28 у меня появилось куча проблем, если стандартная ситуация когда идет поток инсерта/апдейта лочится таблица и селект невозможен, то в этой версии почему-то при обильном селекте таблица лочится на запись, и апдейт почему-то получает меньший приоритет...
nightfly Posted December 18, 2009 Posted December 18, 2009 категорически против! max_connections никак не влияет на работу СТГ, если больше ничего не обращается к мускулу, то max_connections можно поставить =1 и все будет работать! а вот насчет версии, то при переходе на 5,1,28 у меня появилось куча проблем, если стандартная ситуация когда идет поток инсерта/апдейта лочится таблица и селект невозможен, то в этой версии почему-то при обильном селекте таблица лочится на запись, и апдейт почему-то получает меньший приоритет... 1. а статистика а карточные модуля, а бекапилки а прочие костыли? Или предлагаете в репликацию поиграть? При невозможности доконектиться до базы если какая-то нехорошая человека перзистент забыла очень даже клево старгейзер падает (а что ж ему еще делать?) 2. innodb не улыбается?
rem_lex Posted December 20, 2009 Posted December 20, 2009 1. а статистика а карточные модуля, а бекапилки а прочие костыли? Или предлагаете в репликацию поиграть? При невозможности доконектиться до базы если какая-то нехорошая человека перзистент забыла очень даже клево старгейзер падает (а что ж ему еще делать?) 2. innodb не улыбается? 1. я образно, к тому что СТГ достаточно одного коннекта, по дефолту их 100, думаю на всякие бэкапы и модули хватит с головой 2. улыбается, но пока что беззубо... не практично innodb для использования в качестве хранилища для логов
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now