Quản lý tác vụ Elasticsearch

Quan Ly Tac Vu Elasticsearch



“Trong bài đăng này, chúng tôi sẽ xem xét một trong các API thử nghiệm Elasticsearch (tại thời điểm viết hướng dẫn này) cho phép chúng tôi xem thông tin về các tác vụ hiện đang chạy trong một cụm.

Quản lý tác vụ là một yếu tố rất quan trọng đối với bất kỳ quản trị viên nào và khi làm việc với một hệ thống phức tạp như Elasticsearch, bạn sẽ cần thực hiện một số giám sát tác vụ ”.

Hãy để chúng tôi trình bày về những gì API này đòi hỏi và cách nó có thể giúp bạn với tư cách là quản trị viên hệ thống.







LƯU Ý: Tùy thuộc vào cấu hình cụm và cài đặt bảo mật của bạn, API này có thể yêu cầu đặc quyền giám sát.



Cú pháp yêu cầu

Phần sau trình bày cú pháp để gửi yêu cầu tới API quản lý tác vụ.



LẤY / _tasks / < task_id >

LẤY / _tasks

Khi bạn yêu cầu API, lệnh sẽ trả về thông tin chi tiết về các tác vụ hiện tại hoặc tác vụ với ID được chỉ định.





Yêu cầu tham số đường dẫn

Yêu cầu hỗ trợ một tham số đường dẫn:

  • - một giá trị ID duy nhất cho tác vụ có thông tin bạn muốn lấy. ID nhiệm vụ theo sau mẫu node_id: task_number.

Yêu cầu tham số truy vấn

Để tùy chỉnh hành vi và định dạng trả về của truy vấn, bạn có thể chỉ định các tham số sau:



  1. Hành động - điều này xác định một tập hợp các hành động được sử dụng để giới hạn yêu cầu. Tại đây, bạn có thể xác định các hành động dưới dạng danh sách các giá trị được phân tách bằng dấu phẩy.
  2. Chi tiết - đây là một tham số Boolean xác định xem yêu cầu có hiển thị thông tin chi tiết về việc khôi phục phân đoạn hay không. Tùy chọn này mặc định là false
  3. Group_by - đặt các khóa được sử dụng để nhóm các tác vụ từ phản hồi. Các giá trị được chấp nhận bao gồm:
    • Nút - ID nút.
    • Cha mẹ - ID cha mẹ.
    • Nút - không nhóm.
  4. Node_id - xác định nút hoặc danh sách các nút để lấy thông tin từ đó.
  5. parent_task_id - xác định ID gốc được sử dụng để lọc thông tin phản hồi. Để hiển thị tất cả các tác vụ, hãy chỉ định parent_task_id là -1.
  6. master_timeout - chỉ định khoảng thời gian yêu cầu chờ kết nối đến nút chính. Nếu yêu cầu không nhận được phản hồi từ chính sau khi hết thời gian master_timeout, nó sẽ không thành công và trả về lỗi. Thời lượng mặc định được đặt thành 30 giây.
  7. Thời gian chờ - tương tự như master_timeout, nhưng giá trị này xác định khoảng thời gian chờ bất kỳ phản hồi nào.
  8. Wait_for_completion - nếu đúng, yêu cầu sẽ bị chặn cho đến khi hoạt động thoát. Giá trị mặc định là false.

Phản ứng

Nếu thành công, yêu cầu sẽ trả về thông tin chi tiết về nhiệm vụ hoặc các nhiệm vụ được chỉ định. Nếu nhiệm vụ không được tìm thấy, yêu cầu trả về mã trạng thái 404.

Cách sử dụng ví dụ

Ví dụ sau đây cho thấy cách sử dụng API quản lý tác vụ để hiển thị thông tin về tất cả các tác vụ đang chạy trong cụm (tất cả các nút).

cuộn tròn -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: báo cáo'

Yêu cầu phải cung cấp thông tin về các nhiệm vụ trong cụm, như được hiển thị trong đầu ra bên dưới:

Ví dụ 2

Trong ví dụ tiếp theo, chúng tôi sử dụng tham số các nút để giới hạn phản hồi đối với chỉ các tác vụ đang chạy trong nút nô lệ_1

cuộn tròn -XGET “http://localhost:9200/_tasks?nodes=slave_1” -H 'kbn-xsrf: báo cáo'

Điều này sẽ trả về các tác vụ trong nút được chỉ định như được hiển thị trong đầu ra bên dưới:

'nhiệm vụ' : {
'Fit416fGR1GJefJxOxLurw: 1651265' : {
'nút' : 'nô lệ_1' ,
'Tôi' : 1651265 ,
'loại hình' : 'vận chuyển' ,
'hoạt động' : 'chỉ số: giám sát / hạm đội / global_checkpoints' ,
'start_time_in_millis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'có thể hủy bỏ' : sai,
'tiêu đề' : {
'X-co giãn-sản phẩm-nguồn gốc' : 'hạm đội'
}
}

Ví dụ 3

Trong ví dụ 3, chúng tôi sử dụng API quản lý tác vụ để hiển thị thông tin về tác vụ với ID được chỉ định:

cuộn tròn -XGET “http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310” -H 'kbn-xsrf: báo cáo'

Thông tin nhiệm vụ đầu ra như được hiển thị:

Ví dụ 4

Để hiển thị thông tin chi tiết về nhiệm vụ, hãy thêm tham số chi tiết vào yêu cầu như được hiển thị:
[cc lang = ”apache” width = ”100%” height = ”100%” Escape = ”true” theme = ”blackboard” nowrap = ”0 ″]
cuộn tròn -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/ c] c
Điều này sẽ cung cấp thông tin bổ sung về các nhiệm vụ:

Sự kết luận

Bài đăng này đã khám phá cách sử dụng API quản lý tác vụ trong Elasticsearch. API này cho phép chúng tôi truy xuất thông tin về các tác vụ hiện đang thực thi trong cụm.

Chúc mừng !! & Tôi sẽ bắt gặp bạn trong phần tiếp theo.