ניהול משימות הוא גורם עצום עבור כל מנהל מערכת, וכאשר עובדים עם מערכת מורכבת כמו Elasticsearch, תצטרכו לבצע מעקב אחר משימות.'
תן לנו לעסוק במה ה-API הזה כולל וכיצד הוא יכול לעזור לך כמנהל מערכת.
הערה: בהתאם לתצורת האשכול ולהגדרות האבטחה שלך, API זה עשוי לדרוש הרשאות צג.
תחביר בקש
להלן מוצג התחביר לשליחת הבקשה ל-API של ניהול המשימות.
לקבל / _משימות /< מזהה_משימה >
לקבל / _משימות
לאחר שתבקש את ה-API, הפקודה אמורה להחזיר מידע מפורט על המשימות הנוכחיות או המשימה עם המזהה שצוין.
בקש פרמטרים של נתיב
הבקשה תומכת בפרמטר נתיב אחד:
-
– ערך מזהה ייחודי למשימה שאת המידע שלה ברצונך לאחזר. מזהה המשימה עוקב אחר התבנית node_id:task_number.
בקש פרמטרים של שאילתה
כדי להתאים אישית את ההתנהגות ואת פורמט ההחזרה של השאילתה, תוכל לציין את הפרמטרים הבאים:
- פעולות - זה מגדיר קבוצה של פעולות המשמשות להגבלת הבקשה. כאן, תוכל להגדיר את הפעולות כרשימה של ערכים מופרדים בפסיקים.
- מפורט – זהו פרמטר בוליאני שמגדיר האם הבקשה מציגה מידע מפורט על שחזורי רסיסים או לא. ברירת המחדל של אפשרות זו היא false
- Group_by – מגדיר את המקשים המשמשים לקיבוץ המשימות מהתגובה. הערכים המקובלים כוללים:
- צמתים - מזהה צומת.
- הורים - תעודת הורה.
- צומת - אין לקבץ.
- Node_id - מגדיר את הצומת או רשימה של צמתים שמהם ניתן להביא את המידע.
- parent_task_id - מגדיר את מזהה האב המשמש לסינון מידע התגובה. כדי להציג את כל המשימות, ציין את parent_task_id כ-1.
- master_timeout - מציין את משך הזמן שבו הבקשה ממתינה לחיבור לצומת הראשי. אם הבקשה לא מקבלת תשובה מהמאסטר לאחר תום משך הזמן של master_timeout, היא נכשלת ומחזירה שגיאה. משך ברירת המחדל מוגדר ל-30 שניות.
- פסק זמן - בדומה ל-master_timeout, אך ערך זה מגדיר את משך הזמן שבו יש להמתין לתגובה כלשהי.
- 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 זה מאפשר לנו לאחזר מידע על ביצוע משימות כעת באשכול.
לחיים!! ואני אתפוס אותך בפרק הבא.