שיטות מומלצות למעקב

מעקב אחרי התראות

‫Apigee Edge מאפשר להעביר התראות ל-syslog או למערכות/כלים חיצוניים לניטור כשמתרחשת שגיאה או כשל בגלל כשל באירוע. ההתראות האלה יכולות להיות התראות או אירועים ברמת המערכת או ברמת האפליקציה. התראות ברמת האפליקציה הן בדרך כלל התראות מותאמות אישית שנוצרות על סמך אירועים שנוצרו. בדרך כלל אדמין הרשת מגדיר את התנאים המותאמים אישית. לקבלת מידע נוסף על התראות, אפשר לפנות לתמיכה של Apigee.

הגדרת ספי התראה

מגדירים סף שאחריו צריך ליצור התראה. ההגדרה תלויה בתצורת החומרה שלכם. צריך להגדיר את הסף בהתאם לקיבולת שלכם. לדוגמה, יכול להיות שהערך של Apigee Edge יהיה נמוך מדי אם הקיבולת שלכם היא רק 6GB. אפשר להקצות ערך סף באמצעות קריטריון שווה ל- (=) או גדול מ- (>). אפשר גם לציין מרווח זמן בין יצירה של שתי התראות רצופות. אפשר להשתמש באפשרות של שעות/דקות/שניות.

קריטריונים להגדרת התראות ברמת המערכת

בטבלה הבאה מפורטים הקריטריונים:

התרעה הצעה לערך סף תיאור

נפח זיכרון נמוך

‫500MB

הזיכרון נמוך מדי כדי להפעיל רכיב

אין מספיק מקום בכונן (/var/log)

8GB

נפח האחסון נמוך מדי.

עומס גבוה

3+

מספר התהליכים שממתינים להרצה גדל באופן בלתי צפוי

התהליך הופסק

לא רלוונטי, ערך בוליאני true או false

תהליך Apigee Java במערכת הופסק

בדיקת יציאות ספציפיות ל-Apigee ויציאות של צד שלישי

צריך לעקוב אחרי הפורטים הבאים כדי לוודא שהם פעילים

  • יציאות 4526, ‏ 4527 ו-4528 בשרת הניהול, בנתב ובמעבד ההודעות
  • יציאות 1099, ‏ 1100 ו-1101 בשרת הניהול, בנתב ובמעבד ההודעות
  • יציאות 8081 ו-15999 בנתבים
  • יציאות 8082 ו-8998 במעבדי הודעות
  • יציאה 8080 בשרת הניהול

צריך לבדוק את היציאות הבאות של צד שלישי כדי לוודא שהן פעילות:

  • יציאת Qpid‏ 5672
  • יציאה 5432 של Postgres
  • יציאות Cassandra‏ 7000, ‏ 7199, ‏ 9042, ‏ 9160
  • יציאת ZooKeeper‏ 2181
  • SymasLDAP port 10389

כדי לדעת באיזו יציאה כל רכיב של Apigee מאזין לקריאות API, מריצים את קריאות ה-API הבאות לשרת הניהול (בדרך כלל ביציאה 8080):

curl -v -u username:password http://host:port/v1/servers?pod=gateway&region=dc-1
curl -v -u username:password http://host:port/v1/servers?pod=central&region=dc-1
curl -v -u username:password http://host:port/v1/servers?pod=analytics&region=dc-1

הפלט של הפקודות האלה יכלול קטעים דומים לאלה שמוצגים בהמשך. בקטע http.management.port מופיע מספר היציאה של הרכיב שצוין.

{
  "externalHostName" : "localhost",
  "externalIP" : "111.222.333.444",
  "internalHostName" : "localhost",
  "internalIP" : "111.222.333.444",
  "isUp" : true,
  "pod" : "gateway",
  "reachable" : true,
  "region" : "default",
  "tags" : {
    "property" : [ {
      "name" : "Profile",
      "value" : "Router"
    }, {
      "name" : "rpc.port",
      "value" : "4527"
    }, {
      "name" : "http.management.port",
      "value" : "8081"
    }, {
      "name" : "jmx.rmi.port",
      "value" : "1100"
    } ]
  },
  "type" : [ "router" ],
  "uUID" : "2d4ec885-e20a-4173-ae87-10be38b35750"
}

צפייה ביומנים

בקובצי היומן מתועדות הודעות שקשורות לאירוע או לפעולה של המערכת. ההודעות מופיעות ביומן כשתהליכים מתחילים ומסתיימים, או כשמתרחשת שגיאה. בעיון בקובצי יומן אפשר לקבל מידע על רכיבי המערכת, למשל: יחידת העיבוד המרכזית (CPU), הזיכרון, הדיסק, העומס, התהליכים וכו', לפני ואחרי שהמערכת מגיעה למצב של כשל. הנתונים האלה מאפשרים לכם גם לזהות את המקור של בעיות במערכת הנוכחית ולאבחן אותן, או לעזור לכם לחזות בעיות פוטנציאליות במערכת.

לדוגמה, יומן מערכת טיפוסי של רכיב מכיל את הרשומות הבאות, כפי שמוצג בהמשך:

TimeStamp = 25/01/13 19:25 ; NextDelay = 30
Memory
HeapMemoryUsage = {used = 29086176}{max = 64880640} ;
NonHeapMemoryUsage = {init = 24313856}{committed = 57278464} ;
Threading
PeakThreadCount = 53 ; ThreadCount = 53 ;
OperatingSystem
SystemLoadAverage = 0.25 ;

אפשר לערוך את הקובץ /opt/apigee/conf/logback.xml כדי לשלוט במנגנון הרישום בלי להפעיל מחדש את השרת. קובץ logback.xml מכיל את המאפיין הבא שקובע את התדירות שבה מנגנון הרישום בודק את קובץ logback.xml כדי לראות אם יש שינויים בתצורה:

<configuration scan="true" scanPeriod="30 seconds" >

כברירת מחדל, מנגנון הרישום ביומן בודק אם יש שינויים כל דקה. אם לא מציינים את יחידות הזמן במאפיין scanPeriod, ברירת המחדל היא אלפיות השנייה.

בטבלה הבאה מפורט המיקום של קובצי היומן של רכיבי הענן הפרטי של Apigee Edge.

רכיבים מיקום

שרת ניהול

opt/apigee/var/log/edge-management-server

נתב

opt/apigee/var/log/edge-router

מעבד בקשות

opt/apigee/var/log/edge-message-processor

Qpid Server

opt/apigee/var/log/edge-qpid-server

Apigee Postgres Server

opt/apigee/var/log/edge-postgres-server

ממשק משתמש של Edge

opt/apigee/var/log/edge-ui

ZooKeeper

opt/apigee/var/log/apigee-zookeeper

SymasLDAP

opt/apigee/var/log/apigee-openldap

Cassandra

opt/apigee/var/log/apigee-cassandra

Qpidd

opt/apigee/var/log/apigee-qpidd

מסד נתונים של PostgreSQL

opt/apigee/var/log/apigee-postgresql

הפעלת יומני ניפוי באגים עבור מעבד ההודעות וממשק המשתמש של Edge

כדי להפעיל יומני ניפוי באגים עבור Message Processor:

  1. בצומת Message Processor, עורכים את /opt/apigee/customer/application/message-processor.properties. אם הקובץ לא קיים, צריך ליצור אותו.
  2. מוסיפים את הנכס הבא לקובץ:
    conf_system_log.level=DEBUG
  3. מפעילים מחדש את מעבד ההודעות:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

כדי להפעיל יומני ניפוי באגים בממשק המשתמש של Edge:

  1. בצומת Edge UI, עורכים את /opt/apigee/customer/application/ui.properties. אם הקובץ לא קיים, צריך ליצור אותו.
  2. מוסיפים את הנכס הבא לקובץ:
    conf_application_logger.application=DEBUG
  3. מפעילים מחדש את Edge UI:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

שיטות מומלצות ל-apigee-monit

כשמשתמשים ב-apigee-monit, מומלץ ב-Apigee:

כלי מעקב

כלי ניטור כמו Nagios,‏ Collectd,‏ Graphite,‏ Splunk,‏ Sumologic ו-Monit יכולים לעזור לכם לנטר את כל סביבת הארגון והתהליכים העסקיים.

רכיב Nagios Collectd Splunk

בדיקות ברמת המערכת

ניצול יחידת העיבוד המרכזית (CPU)

זיכרון פנוי/בשימוש

ניצול שטח האחסון

סטטיסטיקות רשת

תהליכים

בדיקות API

JMX

Java

קובצי יומן

אירועים קריטיים

הגעה למגבלת הקצב ליצירת בקשות

אי אפשר לגשת לשרת העורפי (Hybris או SharePoint)

אי אפשר להגיע אל FaaS ‏ (STS)

אירועי אזהרה

אי אפשר להגיע לשרת SMTP

הפרות של הסכמי רמת שירות (SLA)