کنترل هزینه، کنترل هزینه

هشدارها را پیکربندی کنید

به منظور کنترل مصرف منابع و هزینه‌های Earth Engine خود، می‌توانید هشدارها را در Cloud Monitoring پیکربندی کنید تا زمانی که معیاری به آستانه خاصی رسید به شما هشدار دهد.

سیستم هشدار Cloud Monitoring بسیار انعطاف پذیر است. ما تعدادی از دستور العمل های مورد علاقه خود را در اینجا جمع آوری کرده ایم، اما با خیال راحت با تنظیمات سفارشی مطابق با نیازهای شما آزمایش کنید.

دستور غذا: اعلان چت برای استفاده از workload_tag

این مثال نشان می‌دهد که چگونه می‌توان یک اعلان گپ (مثلاً یک پیام گپ Google یا یک پیام Slack) را در صورتی که میزان استفاده محاسبه‌شده توسط Earth Engine برای یک workload_tag ​​معین از یک آستانه فراتر رفت، سیم‌کشی کرد. این می‌تواند در مواردی مفید باشد که شما مجموعه‌ای از وظایف صادراتی دارید که داده‌هایی را برای خدمات تولیدی شما ایجاد می‌کنند، و می‌خواهید در صورتی که مجموعاً بیش از مقدار مشخصی از زمان EECU مصرف می‌کنند به شما اطلاع داده شود.

  1. از صفحه هشدار در بخش Cloud Monitoring در کنسول Cloud دیدن کنید.
  2. برای پیکربندی یک خط مشی هشدار جدید، "ایجاد خط مشی" را انتخاب کنید.
  3. متریک را انتخاب کنید:
    • ثانیه های EECU در حال پیشرفت تعداد ثانیه های محاسباتی معلق (هنوز موفقیت آمیز) را نشان می دهد.
    • ممکن است لازم باشد فیلتر «فعال» را لغو انتخاب کنید تا متریک را ببینید.
  4. افزودن فیلتر:
    • از workload_tag == your_workload_tag_value برای فیلتر کردن یک برچسب بار کاری خاص استفاده کنید.
    • از compute_type = batch یا compute_type = online برای فیلتر کردن نوع خاصی از محاسبات استفاده کنید.
  5. مقدار مناسب "Rolling window" را انتخاب کنید. اگر مطمئن نیستید، از 5 min استفاده کنید.
  6. "Sum" را از منوی "Rolling window function" انتخاب کنید. پیکربندی a متریک برای هشدار
  7. ماشه هشدار را انتخاب کنید و نامی برای آن بگذارید.
  8. کانال های اطلاع رسانی را انتخاب کنید.
    • برای این دستور غذا، «مدیریت کانال‌های اعلان» را از پنجره مدال انتخاب می‌کنیم، سپس «افزودن جدید» را برای جای‌گذاری در Space ID چت Google خود انتخاب می‌کنیم. این شناسه را می توان در URL صفحه Gmail یا Chat هنگام مشاهده چت پیدا کرد.
    • اگر از Google Chat استفاده می کنید، باید @Google Cloud Monitoring نیز تایپ کنید و برنامه را برای افزودن برنامه Alerting به Space خود انتخاب کنید (اگر سازمان شما اجازه می دهد).
  9. برچسب های خط مشی و شدت مربوطه را انتخاب کنید.
  10. یک قطعه مستند کوتاه بنویسید.
  11. خط مشی هشدار جدید خود را منتشر کنید!

پس از تنظیم، هر زمان که از آستانه پروژه شما فراتر رفت، هشدارهایی در فضای چت خود دریافت خواهید کرد.

دستور العمل: دریافت هشدارهای ایمیل برای کل در حال پیشرفت زمان EECU

دستورالعمل اعلان‌های چت را دنبال کنید، اما دو تغییر ایجاد کنید:

  1. از مرحله افزودن فیلتر workload_tag ​​بگذرید تا بتوانید همه مقادیر را ببینید.
  2. هنگام انتخاب یک کانال اعلان، به جای پیکربندی کانال چت، به جای آن آدرس ایمیل خود را اضافه کنید.

تأخیر هشدار و زمان

توجه داشته باشید که انتشار گزارش های مانیتورینگ با تأخیر اندکی مواجه است، بنابراین نباید انتظار اعلان های آنی را داشته باشید.

وظایف سنگین منابع را لغو کنید

با توجه به محدودیت، می‌توان از Earth Engine API برای بررسی دوره‌ای فهرست کارهای معلق و درخواست لغو برای هر کار در حال اجرا که از محدودیت EECU-ثانیه فراتر می‌رود، استفاده کرد.

دستور غذا: یک قطعه کد را در یک نوت بوک یا پوسته محلی پایتون اجرا کنید

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
،

هشدارها را پیکربندی کنید

به منظور کنترل مصرف منابع و هزینه‌های Earth Engine خود، می‌توانید هشدارها را در Cloud Monitoring پیکربندی کنید تا زمانی که معیاری به آستانه خاصی رسید به شما هشدار دهد.

سیستم هشدار Cloud Monitoring بسیار انعطاف پذیر است. ما تعدادی از دستور العمل های مورد علاقه خود را در اینجا جمع آوری کرده ایم، اما با خیال راحت با تنظیمات سفارشی مطابق با نیازهای شما آزمایش کنید.

دستور غذا: اعلان چت برای استفاده از workload_tag

این مثال نشان می‌دهد که چگونه می‌توان یک اعلان گپ (مثلاً یک پیام گپ Google یا یک پیام Slack) را در صورتی که میزان استفاده محاسبه‌شده توسط Earth Engine برای یک workload_tag ​​معین از یک آستانه فراتر رفت، سیم‌کشی کرد. این می‌تواند در مواردی مفید باشد که شما مجموعه‌ای از وظایف صادراتی دارید که داده‌هایی را برای خدمات تولیدی شما ایجاد می‌کنند، و می‌خواهید در صورتی که مجموعاً بیش از مقدار مشخصی از زمان EECU مصرف می‌کنند به شما اطلاع داده شود.

  1. از صفحه هشدار در بخش Cloud Monitoring در کنسول Cloud دیدن کنید.
  2. برای پیکربندی یک خط مشی هشدار جدید، "ایجاد خط مشی" را انتخاب کنید.
  3. متریک را انتخاب کنید:
    • ثانیه های EECU در حال پیشرفت تعداد ثانیه های محاسباتی معلق (هنوز موفقیت آمیز) را نشان می دهد.
    • ممکن است لازم باشد فیلتر «فعال» را لغو انتخاب کنید تا متریک را ببینید.
  4. افزودن فیلتر:
    • از workload_tag == your_workload_tag_value برای فیلتر کردن یک برچسب بار کاری خاص استفاده کنید.
    • از compute_type = batch یا compute_type = online برای فیلتر کردن نوع خاصی از محاسبات استفاده کنید.
  5. مقدار مناسب "Rolling window" را انتخاب کنید. اگر مطمئن نیستید، از 5 min استفاده کنید.
  6. "Sum" را از منوی "Rolling window function" انتخاب کنید. پیکربندی a متریک برای هشدار
  7. ماشه هشدار را انتخاب کنید و نامی برای آن بگذارید.
  8. کانال های اطلاع رسانی را انتخاب کنید.
    • برای این دستور غذا، «مدیریت کانال‌های اعلان» را از پنجره مدال انتخاب می‌کنیم، سپس «افزودن جدید» را برای جای‌گذاری در Space ID چت Google خود انتخاب می‌کنیم. این شناسه را می توان در URL صفحه Gmail یا Chat هنگام مشاهده چت پیدا کرد.
    • اگر از Google Chat استفاده می کنید، باید @Google Cloud Monitoring نیز تایپ کنید و برنامه را برای افزودن برنامه Alerting به Space خود انتخاب کنید (اگر سازمان شما اجازه می دهد).
  9. برچسب های خط مشی و شدت مربوطه را انتخاب کنید.
  10. یک قطعه مستند کوتاه بنویسید.
  11. خط مشی هشدار جدید خود را منتشر کنید!

پس از تنظیم، هر زمان که از آستانه پروژه شما فراتر رفت، هشدارهایی در فضای چت خود دریافت خواهید کرد.

دستور العمل: دریافت هشدارهای ایمیل برای کل در حال پیشرفت زمان EECU

دستورالعمل اعلان‌های چت را دنبال کنید، اما دو تغییر ایجاد کنید:

  1. از مرحله افزودن فیلتر workload_tag ​​بگذرید تا بتوانید همه مقادیر را ببینید.
  2. هنگام انتخاب یک کانال اعلان، به جای پیکربندی کانال چت، به جای آن آدرس ایمیل خود را اضافه کنید.

تأخیر هشدار و زمان

توجه داشته باشید که انتشار گزارش های مانیتورینگ با تأخیر اندکی مواجه است، بنابراین نباید انتظار اعلان های آنی را داشته باشید.

وظایف سنگین منابع را لغو کنید

با توجه به محدودیت، می‌توان از Earth Engine API برای بررسی دوره‌ای فهرست کارهای معلق و درخواست لغو برای هر کار در حال اجرا که از محدودیت EECU-ثانیه فراتر می‌رود، استفاده کرد.

دستور غذا: یک قطعه کد را در یک نوت بوک یا پوسته محلی پایتون اجرا کنید

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