Konfigurowanie alertów
Aby kontrolować koszty i wykorzystanie zasobów Earth Engine, możesz skonfigurować alerty w Cloud Monitoring, które będą Cię ostrzegać, gdy dany wskaźnik osiągnie określony próg.
System alertów Cloud Monitoring jest bardzo elastyczny. Zebraliśmy tu kilka naszych ulubionych przepisów, ale możesz też eksperymentować z niestandardowymi konfiguracjami, które odpowiadają Twoim potrzebom.
Przepis: powiadomienie o czacie dotyczące korzystania z workload_tag
Ten przykład pokazuje, jak skonfigurować powiadomienie z czatu (np. wiadomość z Google Chat lub Slack), jeśli wykorzystanie zasobów obliczeniowych Earth Engine dla danego workload_tag
przekroczy określony próg. Może to być przydatne, jeśli masz zestaw zadań eksportu, które tworzą dane dla usługi produkcyjnej, i chcesz otrzymywać powiadomienia, gdy łączny czas ich wykonywania przekroczy pewną wartość w EECU.
- Otwórz stronę Alerty w sekcji Cloud Monitoring w konsoli Google Cloud.
- Aby skonfigurować nową zasadę tworzenia alertów, kliknij „Utwórz zasadę”.
- Wybierz dane:
- W toku EECU-sekundreprezentuje liczbę oczekujących (jeszcze nieudanych) sekund obliczeń.
- Aby zobaczyć dane, konieczne może być odznaczenie filtra „Aktywne”.
- Dodawanie filtra:
- Aby filtrować według konkretnego tagu obciążenia, użyj parametru
workload_tag == your_workload_tag_value
. - Aby filtrować według konkretnego typu obliczeń, użyj wartości
compute_type = batch
lubcompute_type = online
.
- Aby filtrować według konkretnego tagu obciążenia, użyj parametru
- Wybierz odpowiednią wartość „Okno przesuwające się”. Jeśli nie masz pewności, użyj
5 min
. - W menu „Funkcja okna przesuwającego” kliknij „Suma”.
- Wybierz wyzwalacz alertu i nadaj mu nazwę.
- Wybierz kanały powiadomień.
- W tym przypadku w oknie modalnym kliknij „Zarządzaj kanałami powiadomień”, a następnie „Dodaj nowy”, aby wkleić identyfikator pokoju w Google Chat. Ten identyfikator można znaleźć w adresie URL strony Gmail lub Google Chat podczas wyświetlania czatu.
- Jeśli korzystasz z Google Chat, musisz też wpisać
@Google Cloud Monitoring
i wybrać aplikację, aby dodać ją do pokoju (jeśli pozwala na to Twoja organizacja).
- Wybierz odpowiednie zasady i etykiety wagi.
- Napisz krótki fragment dokumentacji.
- Opublikuj nową zasadę tworzenia alertów.
Po ustawieniu progu będziesz otrzymywać alerty w czacie za każdym razem, gdy zostanie on przekroczony w Twoim projekcie.
Receptura: otrzymywanie e-maili z alertami o łącznym czasie trwania EECU w toku
Postępuj zgodnie z instrukcjami dotyczącymi powiadomień z Google Chat, ale wprowadź 2 zmiany:
- Pomiń krok dodawania filtra
workload_tag
, aby wyświetlić wszystkie wartości. - Zamiast konfigurować kanał czatu, dodaj adres e-mail.
Czas opóźnienia i wyświetlenia alertu
Pamiętaj, że rozpowszechnianie raportów z monitorowania może zająć trochę czasu, więc nie spodziewaj się natychmiastowych powiadomień.
Anulowanie zadań wymagających dużych zasobów
W przypadku limitu można używać interfejsu Earth Engine API do okresowego sprawdzania listy oczekujących zadań i prośby o anulowanie każdego uruchomionego zadania, które przekracza limit EECU-sekund.
Procedura: uruchamianie fragmentu kodu w notatniku lub lokalnym powłoce Pythona
eecu_seconds_limit = 50 * 60 * 60 # 50 hours
print("Watching for operations to cancel...")
while(True):
for op in ee.data.listOperations():
if op['metadata']['state'] == 'RUNNING':
if op['metadata'].get('batchEecuUsageSeconds', 0) > eecu_seconds_limit:
print(f"Cancelling operation {op['name']}")
ee.data.cancelOperation(op['name'])
time.sleep(10) # 10 seconds