Как реализовать живой и готовность с помощью django -health-check - PullRequest
1 голос
/ 27 апреля 2020

Мы используем kuberntes и нам нужны две разные конечные точки: одна для здоровья и одна для живых. По некоторым причинам мы выбираем https://github.com/KristianOellegaard/django-health-check. Легко реализовать второе представление для живого, которое загружено, но - это представление пусто - я не понимаю, как я мог настроить плагины, которые должны использоваться для представления.

class AliveCheck(MainView):
# template_name = 'myapp/health_check_dashboard.html'  # customize the used templates

def __init__(self):
    self.plugins.clear()
    self.plugins.append(DiskUsage())

def get(self, request, *args, **kwargs):
    errors = super(MainView, self).run_check()
    return super(MainView, self).get(request, args, kwargs)

Есть идеи?

1 Ответ

0 голосов
/ 28 апреля 2020

Мы нашли для нас следующее решение. Не очень приятно, потому что мы получаем доступ к внутренним свойствам суперклассов, но это работает.

class AliveCheck(MainView):

    def __init__(self):
        self.plugins          # force loading of configured plugins
        self._plugins.clear() # remove all configured plugins
        # append the plugins you are interested in 
        self._plugins.append(CacheBackend())
        self._plugins.append(DefaultFileStorageHealthCheck())
        self._plugins.append(DiskUsage())
        self._plugins.append(MemoryUsage())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...