Witam
Mam w Panelu Admina podłączenie do wielu komputerów. Mam tak wszystkie dane, o której wchodzono na dany komputer, co na nim robiono itd. Jak zrobić by Django wysyłało te logi ( z danego komputera, computer.id) do jakiegoś folderu czy maila np codziennie o godzinie 18:00?? Może jakaś wskazówka jak to robić?
blecho napisał(a):
Mam w Panelu Admina podłączenie do wielu komputerów. Mam tak wszystkie dane, o której wchodzono na dany komputer, co na nim robiono itd.
Trochę nie bardzo rozumiem co piszesz, ale... Zakładam, że w panelu admina (django) masz podgląd tabel z bazy danych gdzie te wszystkie 'logi' są zapisywane i chcesz to cyklicznie eksportować gdzieś. Rozwiązaniem może być rozszerzenie funkcjonalności manage.py
poprzez dodanie własnego polecenia: https://docs.djangoproject.com/en/dev/howto/custom-management-commands/
Po prostu tworzysz plik np. sendstats.py
(od wyślij statystyki), w tym pliku taką strukturę programu jak masz w przykładzie, w funkcji handle
(zobacz przykład) piszesz to co ma zrobić (zapisać dane do pliku, wysłać mailem itp). W ten sposób masz dostęp do wszystkich danych, do których ma dostęp django, i tak przygotowaną funkcjonalność możesz już wywołać spoza django poprzez wykonanie z konsoli polecenia manage.py sendstats
Skoro masz dostęp z zewnątrz
do projektu django (a tym samym danych) pozostaje jedynie cykliczne wywoływanie tego polecenia o określonej godzinie poprzez cron
np. dopisując do niego linijkę:
* 18 * * * /sciezka/do/projektu/manage.py sendstats 2>&1