2016-04-27 12 views
0

Я использую sidekiq Pro и обычно отслеживаю процесс моих работников в своем веб-интерфейсе. Всякий раз, когда возникает ошибка, задача перемещается на вкладку «Retries», где отображаются имя очереди и сообщение об ошибке. Дело в том, что я хотел бы добавить данные к этому сообщению (в частности, имя класса и номер строки), но я не нашел информацию об этом в любом месте. Возможно ли отредактировать/настроить отображение веб-интерфейса? Если это так, как?изменить или добавить данные в Sidekiq Web UI

ответ

0

Возможно ли отредактировать/настроить отображение веб-интерфейса? Если это так, как?

Да, это возможно. Один из способов получения дополнительной информации о мониторинге - создание пользовательской страницы пользовательского интерфейса. Вам понадобится определить модуль, содержащий обработку запросов логик и зарегистрировать этот модуль в качестве веб-страницы Sidekiq:

module WebAddition 
    def self.registered(app) 
    app.get('/desired_path') do 
     # you can define @instance_variables for passing into template 
     # Sidekiq uses erb for its templates so you should do it aswell 
     erb File.read(path_to_desired_erb_file) 
    end 
    end 
end 

# here we instruct Sidekiq to take our UI extension onboard 
Sidekiq::Web.register WebAddition 
# in case you want to provide localization, it's achieved here 
Sidekiq::Web.locales << File.expand_path(File.dirname(__FILE__) + "/web/locales") 
# the name of your tab (at the left hand) gonna be translated 
# using the provided locale file (if any). 
# right hand of the equation should be equal to the path you specified 
# in registered() method 
Sidekiq::Web.tabs['disappeared_jobs'] = 'desired_path' 

Другой вариант (хотя сильно не рекомендуется) может быть monkeypatch код Sidekiq UI себя. Взгляните на класс Sidekiq WebApplication, измените методы, в которых вы заинтересованы, и обновите файлы * .erb, расположенные в папке web/views.