Làm thế nào để kiểm tra Jenkins xây dựng bộ nhớ miễn phí?


13

Trong Jenkins khi nhấp vào Build Executor Status tôi chỉ có thể thấy các thống kê liên quan đến không gian đĩa trống (URI /computer:). Làm cách nào tôi có thể theo dõi bộ nhớ hệ thống miễn phí (RAM) trong Jenkins?

Tôi đang hỏi, bởi vì đôi khi khi tôi có quá nhiều người thực thi (mặc dù đã cấu hình không gian hoán đổi, nhưng không phải là bên dưới), Jenkins đã bị đóng băng hoặc sụp đổ rất nhiều.

Jenkins tại / máy tính - Tên, Kiến trúc, Sự khác biệt của Đồng hồ, Không gian đĩa miễn phí, Không gian hoán đổi miễn phí, Không gian tạm thời miễn phí, Thời gian đáp ứng


5
Bạn có thể thấy plugin theo dõi hữu ích: wiki.jenkins-ci.org/display/JENKINS/Monitoring
Assaf Lavie

2
Lưu ý bên lề: hoán đổi nặng sẽ mang lại ngay cả các máy chủ mạnh nhất để thu thập dữ liệu, làm chậm tất cả các quy trình, bao gồm cả người thực thi Jenkins và các giải pháp giám sát cục bộ. Để làm cho vấn đề tồi tệ hơn: người thu gom rác bộ nhớ cũng sẽ chạy chậm, tiếp tục cung cấp điều kiện. Để có hiệu suất tốt, tôi khuyên bạn nên giữ kích thước trao đổi nhỏ, chủ yếu dựa vào kích thước RAM thực tế khi chia sẻ cùng một máy chủ cho nhiều người thực thi và tránh đăng ký quá nhiều.
Dan Cornilescu

Câu trả lời:


8

Hãy xem plugin Giám sát . Dưới đây là một số chi tiết về nó (từ trang được liên kết):

  • Biểu đồ bộ nhớ, cpu, trung bình tải hệ thống, thời gian phản hồi http theo ngày, tuần, tháng, năm hoặc thời gian tùy chỉnh
  • Thống kê các yêu cầu http với thời gian phản hồi trung bình, thời gian cpu trung bình, kích thước phản hồi trung bình theo yêu cầu và theo ngày, tuần, tháng, năm hoặc thời gian tùy chỉnh
  • Lỗi và nhật ký
  • Yêu cầu http hiện tại
  • Chủ đề
  • Biểu đồ heap (thể hiện và kích thước theo lớp)
  • Phiên http
  • Danh sách tiến trình của HĐH
  • MBeans
  • Các hành động cho GC, heap dump và (các) phiên không hợp lệ
  • Báo cáo bằng html hoặc pdf
  • Bằng tiếng Anh, tiếng Đức, tiếng Pháp, tiếng Bồ Đào Nha hoặc tiếng Trung Quốc
  • Bảo mật Jenkins
  • Đối với các nút Jenkins (nô lệ nói chung):
    • Báo cáo cho các nút có sẵn tại http://yourhost/monitoring/nodes
    • Biểu đồ tổng hợp cho tất cả các nút của bộ nhớ, cpu, trung bình tải hệ thống, số lượng bản dựng đang chạy, thời lượng hàng đợi xây dựng, thời gian xây dựng theo thời gian
    • Thống kê chi tiết thời gian xây dựng và các bước xây dựng theo thời kỳ
    • Chủ đề, danh sách quy trình và MBeans cho mỗi nút
    • Biểu đồ heap tổng hợp cho tất cả các nút
  • Đối với mỗi nút riêng lẻ (mỗi nút trong http://yourhost/computer), các báo cáo và hành động có sẵn từ trang "Giám sát" trong menu ngữ cảnh hoặc trong chi tiết của nút:
    • Chủ đề, danh sách quá trình, MBeans của nút đó
    • Biểu đồ heap của nút đó
    • Các hành động cho GC, heap dump
  • Và nhiều hơn nữa...

Tín dụng: Assaf Lavie (người đầu tiên đề cập đến nó trong một bình luận, nhưng vì một số lý do đã không đăng nó như một câu trả lời thực sự ...).


5

Đối với cách giải quyết, bộ nhớ thực có thể được kiểm tra bằng cách gọi các lệnh Groovy trực tiếp trong Bảng điều khiển tập lệnh (at /computer/(master)/script). Lệnh ví dụ:

println "free -m".execute().text

2
Lệnh thay thế: chỉ awk '/MemFree:/ { print $2}' /proc/meminfodành cho kB không có ram hoặc thay thế cho Bộ nhớ và Hoán đổi:awk '/(Mem|Swap)Free:/ { print }' /proc/meminfo
Tensibai

Tôi không chắc chắn nếu các kịch bản awk có thể được thực thi thông qua bảng điều khiển kịch bản Jenkins. Như tôi có thể thấy, bảng điều khiển kịch bản Jenkins chỉ dành cho Groovy
olyv
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.