@drawoharaя ❤️ це! << натисни мене 🐛 🫖 🧚
/it-s-in-the-logs-stupid
опубліковано: 2014-09-12

(Цей пост спочатку з'явився у блозі Спайка Речі... Та інше...)

Учора я брав участь у «пожежній тревозі» щодо запуску нового сайту на Rails у дуже стислі терміни. Сайт працював нормально в режимі розробки/тестування, але індексна сторінка у виробничому середовищі відтворювалася понад 10 секунд.

Оскільки він працював поза виробничим середовищем, ми дійшли висновку, що це пов'язано з інфраструктурою хостингу. Ми перевіряли Apache, Passenger, навантаження на сервер, мережеву конфігурацію тощо. Нічого.

Нарешті, я вирішив перевірити log/production.log, і ось воно:

Processing by BlahController#index as */*
  Rendered blah/_carousel.html.erb (5795.2ms)
  Rendered blah/index.html.erb within layouts/site (5801.5ms)

Ми швидко виявили це через обробку зображень, яка не кешувалася. Це не проявлялося поза виробничим середовищем, тому що зображення були іншими. Я не буду нудити вас деталями.

Однак, я нудитиму просвіщу вас щодо моєї думки. Під час налагодження проблеми, почніть з простих речей. Логи Rails не надто детальні, але вони надають достатньо інформації, щоб швидко дійти до вирішення проблем у вашому коді.