Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Найти источник запросов


Recommended Posts

Приветствую.

Уже с месяц происходит почти ежеминутное обновление таблицы oc_product_special неизвестно по каким причинам. 

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

Пробовал с debug_backtrace поколдовать, но как-то безрезультатно. 

 

 5ab1c52d2d4a7_0q1mbpa1kr-.thumb.jpg.ce1cc840f856593a12b7c26469d708d5.jpg

Надіслати
Поділитися на інших сайтах


Поиском по файлам можно найти все вхождения INSERT INTO oc_product_special
А там уже анализировать

Надіслати
Поділитися на інших сайтах


8 минут назад, chukcha сказал:

ага, а если модель закодирвана?
 

Ааа .. точно, засада :ph34r:

Надіслати
Поділитися на інших сайтах

7 часов назад, ImLucky сказал:

Пробовал с debug_backtrace поколдовать, но как-то безрезультатно. 

Да вот это как-то непонятно

Запись происходит в обход $this->db?

5 минут назад, nikifalex сказал:

забрать права на запись в таблицу

 

Это слишком тяжелая артиллерия.

Надіслати
Поділитися на інших сайтах

 

On 21.03.2018 at 11:50 AM, fanatic said:

или    DB_PREFIX . "product_special

 

Это более правильный вариант, потому что 

 

On 21.03.2018 at 11:42 AM, thentru said:

Поиском по файлам можно найти все вхождения INSERT INTO oc_product_special
А там уже анализировать

 

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

 

On 21.03.2018 at 12:42 PM, chukcha said:

ага, а если модель закодирвана?
Надо начинать с модулей скидок, акций и прочее..
 

 

Так и есть, один из файлов закодирован, причем как раз с дублирующие функцией (ну судя по названию). К счастью дело не в нем оказалось.

 

On 21.03.2018 at 1:16 PM, chukcha said:

Да вот это как-то непонятно

Запись происходит в обход $this->db?

 

Это слишком тяжелая артиллерия.

 

Да всё нормально "происходило". Только проблема была в том, что сайт был "боевой" с тысячной посещаемостью. В итоге после подключения к запросам debug_backtrace и записью в лог результатов - за несколько секунд накапливался лог в несколько  ГБ и сервер умирал. Перенести на тестовую среду из-за привязки модулей к домену - было не вариант(ну и еще причины были). Короче говоря, основным ключом в поиске решения проблемы по файлам было то,  что перед INSERT не было DELETE. Хоть и мониторил код подозреваемого модуля несколько раз, но не сразу заметил "$this->applySpecials();". В итоге получилось так, что модуль выводился на главной... а у того была функция какой-то непонятной проверки с последующим "$this->applySpecials();". Короче говоря, при обращении к главной странице - срабатывало обновление таблицы.

Надіслати
Поділитися на інших сайтах


5 часов назад, ImLucky сказал:

Перенести на тестовую среду из-за привязки модулей к домену - было не вариант

Кто мешает тестовый домен назвать как боевой?

Нормальные разрабы дают второй ключ для тестового домена.

Змінено користувачем d0tb0t
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.