Trình giám sát quy trình dễ dàng, nhưng sẵn sàng sản xuất trong Linux / Unix [đã đóng]


8

Tôi đang tìm kiếm một trình giám sát quy trình đơn giản cho tài khoản của mình trong một VPS phổ biến. Tôi yêu Người giám sát và Monit, nhưng họ có vẻ quá mức đối với tôi.

Tôi muốn một cái gì đó

  1. chạy như một daemon (Vì vậy, tài khoản VPS của tôi có thể khởi động nó khi khởi động và cũng "bắt đầu" bằng cron trong trường hợp màn hình tự tắt)
  2. theo dõi bằng cách sinh ra các công cụ dưới dạng quy trình con (như Người giám sát) hoặc bằng cách thực hiện lệnh bỏ phiếu trả về đúng hoặc sai (như câu lệnh BASH if)
  3. cả hai đều dễ sử dụng (cần cấu hình tối thiểu) và sản xuất ổn định (bằng cách nào đó ít phần mềm dường như đáp ứng cả hai nhu cầu)
  4. Thích hợp trong VPS được quản lý chạy ở chế độ người dùng, sử dụng bộ nhớ tối thiểu

Câu trả lời:


2

Bạn đang tìm chương trình daemontools . (Nếu đây là ý của người giám sát "Người giám sát", thì hãy bỏ qua phần còn lại của câu trả lời của tôi.)

daemontools là một tập hợp các công cụ để quản lý các dịch vụ UNIX.

giám sát giám sát một dịch vụ. Nó khởi động dịch vụ và khởi động lại dịch vụ nếu nó chết. Thiết lập một dịch vụ mới rất dễ dàng: tất cả các nhu cầu giám sát là một thư mục có tập lệnh chạy dịch vụ.

multilog lưu thông báo lỗi vào một hoặc nhiều bản ghi. Nó tùy chọn dấu thời gian từng dòng và, đối với mỗi nhật ký, bao gồm hoặc loại trừ các dòng khớp với các mẫu được chỉ định. Nó tự động xoay các bản ghi để giới hạn dung lượng đĩa được sử dụng. Nếu đĩa đầy, nó tạm dừng và thử lại, mà không mất bất kỳ dữ liệu nào.

Nó đơn giản, linh hoạt và rất mạnh mẽ. Ý tưởng cơ bản là đối với mỗi dịch vụ bạn muốn chạy, daemontools sẽ khởi chạy một tiến trình con (được gọi supervise) sau đó khởi chạy dịch vụ của bạn. supervise cấu hình các biến môi trường của dịch vụuid / gid , sau đó giữ tiêu chuẩn của dịch vụ trong và ngoài tiêu chuẩn để nó có thể gửi tín hiệu. Dịch vụ không cần phải tự tạo daemon và bạn không phải quản lý các tệp pid. Dịch vụ chính không yêu cầu root để chạy và bạn có thể đặt các thư mục của các dịch vụ được giám sát ở bất cứ đâu.


runitsẽ là một thay thế cho daemontools. Nó cũng rất đơn giản và cấp thấp. Về cơ bản, tất cả những gì bạn cần để chạy một proces là một tệp chứa một số lệnh exec, ví dụ: exec sleep 300Sau đó, bạn tạo một liên kết tượng trưng từ thư mục chứa tập lệnh chạy đến /etc/service/namevà bạn đã hoàn tất.
Tombart

1

Câu trả lời đơn giản là bạn đã có sẵn - Mọi hệ thống Unix đều có - init và / etc / inittab.

Công việc của init là sinh ra các tiến trình được liệt kê trong inittab, theo dõi chúng và khởi động lại chúng nếu chúng thoát.


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.