מדדי תוויות

תוויות מאפשרות להבחין בין המאפיינים של מדד. בנוסף לאיסוף מדדים, משאב ה-MonitoringTarget המותאם אישית מאפשר לכם להוסיף תוויות למדדים כדי להשתמש בתכונות אופציונליות של יכולת תצפית:

מידע נוסף על שינוי תוויות של מדדים זמין בכתובת https://grafana.com/blog/2022/03/21/how-relabeling-in-prometheus-works/.

לפני שמתחילים

כדי לנהל משאבים מותאמים אישית של MonitoringTarget, צריכות להיות לכם ההרשאות הנדרשות.

שליחת בקשה לתפקידים ארגוניים ב-IAM

צריך לפנות לאדמין ה-IAM בארגון ולבקש את התפקידים הבאים:

  • ‫MonitoringTarget PA Creator (monitoringtarget-pa-creator): יצירת MonitoringTarget משאבים בהתאמה אישית.
  • ‫MonitoringTarget PA Editor (monitoringtarget-pa-editor): עריכה או שינוי של MonitoringTarget משאבים מותאמים אישית.
  • ‫MonitoringTarget PA Viewer (monitoringtarget-pa-viewer~): viewמשאבים מותאמים אישית של MonitoringTarget.

בקשת תפקידים ב-IAM בפרויקט

פנו לאדמין של IAM בפרויקט ובקשו ממנו להקצות לכם את התפקידים הבאים:

  • ‫MonitoringTarget Editor (monitoringtarget-editor): עריכה או שינוי של MonitoringTarget משאבים בהתאמה אישית במרחב השמות של הפרויקט.
  • ‫MonitoringTarget Viewer (monitoringtarget-viewer): צפייה במשאבים מותאמים אישית במרחב השמות של הפרויקט.MonitoringTarget

שליחת מדדים לפרויקט אחר

מחברי קונטיינרים יכולים לקוד מדדים ספציפיים כדי לשלוח אותם לפרויקט אחר, גם לפרויקטים שלא בבעלותם. כדי לשלוח מדד לפרויקט ספציפי, מוסיפים את התווית _gdch_project למדד בקוד ומגדירים את הערך שלה לשם פרויקט היעד.

לחלופין, אפשר להשתמש במשאב המותאם אישית MonitoringTarget כדי לשלוח את כל נתוני המדדים שנאספו לפרויקט אחר. מגדירים את התווית _gdch_project כתווית יעד בשדה metricsRelabelings, עם שם הפרויקט החדש כערך החלפה.

בדוגמת הקוד הבאה אפשר לראות איך מגדירים את תווית היעד _gdch_project במשאב המותאם אישית MonitoringTarget כדי לשלוח מדדים לפרויקט בשם another-project-name:

apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods.
  namespace: PROJECT_NAMESPACE
  name: MONITORING_TARGET_NAME
spec:
  [...]
  podMetricsEndpoints:
    [...]
    metricsRelabelings:
      - action: replace
        targetLabel: _gdch_project
        replacement: another-project-name
      [...]

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_NAMESPACE: מרחב השמות של הפרויקט.
  • ‫MONITORING_TARGET_NAME: השם של קובץ ההגדרה MonitoringTarget.

הוספת תוויות חדשות למדדים

תוויות עוזרות בבדיקה ובמעקב אחרי מדדים, כי הן מזהות את המאפיינים שלהם. אפשר להוסיף תוויות שהמאגרי התגים שנסרקו לא חושפים בהתחלה. במשאב המותאם אישית MonitoringTarget, מגדירים את התווית החדשה כיעד ומזינים ערך חלופי. צמד המפתח/ערך הזה מתווסף לכל המדדים שהמשאב אוסף.

בדוגמת הקוד הבאה אפשר לראות איך מגדירים את תווית היעד my_new_label ומגדירים את הערך שלה ל-my_label_value במשאב המותאם אישית MonitoringTarget:

apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods.
  namespace: PROJECT_NAMESPACE
  name: MONITORING_TARGET_NAME
spec:
  [...]
  podMetricsEndpoints:
    [...]
    metricsRelabelings:
      - action: replace
        targetLabel: my_new_label
        replacement: my_label_value
      [...]

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_NAMESPACE: מרחב השמות של הפרויקט.
  • ‫MONITORING_TARGET_NAME: השם של קובץ ההגדרה MonitoringTarget.

שינוי שם של מדד

אפשר לשנות את השם של מדד במאגר התגים באמצעות המשאב MonitoringTarget. מגדירים את שם המדד המקורי ואת השם החלופי שלו בשדה metricsRelabelings. השם המקורי מטופל כביטוי רגולרי (regex) ומוחלף בשם החדש.

בדוגמת הקוד הבאה אפשר לראות איך מחליפים את שם המדד cpu_usage (ביטוי רגולרי) ב-cpu_usage_new_name במשאב המותאם אישית MonitoringTarget:

apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
  # Choose the same namespace as the workload pods.
  namespace: PROJECT_NAMESPACE
  name: MONITORING_TARGET_NAME
spec:
  [...]
  podMetricsEndpoints:
    [...]
    metricsRelabelings:
      - action: replace
        regex: cpu_usage
        replacement: cpu_usage_new_name
        sourceLabels: [__name__]
        targetLabel: __name__
      [...]

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_NAMESPACE: מרחב השמות של הפרויקט.
  • ‫MONITORING_TARGET_NAME: השם של קובץ ההגדרה MonitoringTarget.