Elasticsearch ניהול משימות

Elasticsearch Nyhwl Msymwt



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

ניהול משימות הוא גורם עצום עבור כל מנהל מערכת, וכאשר עובדים עם מערכת מורכבת כמו Elasticsearch, תצטרכו לבצע מעקב אחר משימות.'

תן לנו לעסוק במה ה-API הזה כולל וכיצד הוא יכול לעזור לך כמנהל מערכת.







הערה: בהתאם לתצורת האשכול ולהגדרות האבטחה שלך, API זה עשוי לדרוש הרשאות צג.



תחביר בקש

להלן מוצג התחביר לשליחת הבקשה ל-API של ניהול המשימות.



לקבל / _משימות /< מזהה_משימה >

לקבל / _משימות

לאחר שתבקש את ה-API, הפקודה אמורה להחזיר מידע מפורט על המשימות הנוכחיות או המשימה עם המזהה שצוין.





בקש פרמטרים של נתיב

הבקשה תומכת בפרמטר נתיב אחד:

  • – ערך מזהה ייחודי למשימה שאת המידע שלה ברצונך לאחזר. מזהה המשימה עוקב אחר התבנית node_id:task_number.

בקש פרמטרים של שאילתה

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



  1. פעולות - זה מגדיר קבוצה של פעולות המשמשות להגבלת הבקשה. כאן, תוכל להגדיר את הפעולות כרשימה של ערכים מופרדים בפסיקים.
  2. מפורט – זהו פרמטר בוליאני שמגדיר האם הבקשה מציגה מידע מפורט על שחזורי רסיסים או לא. ברירת המחדל של אפשרות זו היא false
  3. Group_by – מגדיר את המקשים המשמשים לקיבוץ המשימות מהתגובה. הערכים המקובלים כוללים:
    • צמתים - מזהה צומת.
    • הורים - תעודת הורה.
    • צומת - אין לקבץ.
  4. Node_id - מגדיר את הצומת או רשימה של צמתים שמהם ניתן להביא את המידע.
  5. parent_task_id - מגדיר את מזהה האב המשמש לסינון מידע התגובה. כדי להציג את כל המשימות, ציין את parent_task_id כ-1.
  6. master_timeout - מציין את משך הזמן שבו הבקשה ממתינה לחיבור לצומת הראשי. אם הבקשה לא מקבלת תשובה מהמאסטר לאחר תום משך הזמן של master_timeout, היא נכשלת ומחזירה שגיאה. משך ברירת המחדל מוגדר ל-30 שניות.
  7. פסק זמן - בדומה ל-master_timeout, אך ערך זה מגדיר את משך הזמן שבו יש להמתין לתגובה כלשהי.
  8. Wait_for_completion – אם זה נכון, הבקשה נחסמת עד לסיום הפעולה. ברירת המחדל ל-false.

תְגוּבָה

אם תצליח, הבקשה תחזיר מידע מפורט על המשימה או המשימות שצוינו. אם המשימה לא נמצאה, הבקשה מחזירה קוד 404 סטטוס.

שימוש לדוגמה

הדוגמה הבאה מראה כיצד להשתמש ב-API לניהול משימות כדי להציג מידע על כל המשימות הפועלות באשכול (כל הצמתים).

תלתל -XGET 'http://localhost:9200/_tasks' 'kbn-xsrf: דיווח'

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

דוגמה 2

בדוגמה הבאה, אנו משתמשים בפרמטר nodes כדי להגביל את התגובה רק למשימות שפועלות ב-node slave_1

תלתל -XGET 'http://localhost:9200/_tasks?nodes=slave_1' 'kbn-xsrf: דיווח'

זה אמור להחזיר את המשימות בצומת שצוין כפי שמוצג בפלט למטה:

'משימות' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'צוֹמֶת' : 'slave_1' ,
'תְעוּדַת זֶהוּת' : 1651265 ,
'סוּג' : 'תַחְבּוּרָה' ,
'פעולה' : 'indexes:monitor/fleet/global_checkpoints' ,
'זמן_התחלה_במיליון' : 1664214054489 ,
'זמן_ריצה_בננו' : 94450056094 ,
'ניתן לביטול' : שקר,
'כותרות' : {
'X-elastic-product-origin' : 'צי'
}
}

דוגמה 3

בדוגמה 3, אנו משתמשים בממשק API לניהול משימות כדי להציג מידע על המשימה עם המזהה שצוין:

תלתל -XGET 'http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310' 'kbn-xsrf: דיווח'

מידע על משימת פלט הוא כפי שמוצג:

דוגמה 4

כדי להציג מידע מפורט על המשימה, הוסף את הפרמטר המפורט לבקשה כפי שמוצג:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
curl -XGET 'http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]ג
זה אמור לספק מידע נוסף על המשימות:

סיכום

פוסט זה נחקר כיצד להשתמש ב-API לניהול משימות ב-Elasticsearch. ממשק API זה מאפשר לנו לאחזר מידע על ביצוע משימות כעת באשכול.

לחיים!! ואני אתפוס אותך בפרק הבא.