Tôi đang gỡ lỗi các câu lệnh chương trình bắt đầu/dừng chương trình. Trong tập tin /etc/monit.conf
tôi, tuyên bố start program
của tôi trông như thế này:monit xóa dấu ngoặc kép khỏi các lệnh chương trình bắt đầu
check process node with pidfile /home/ec2-user/blah/node.pid
start program = "/bin/su -c 'export APP_ENV=development; /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js start &> /tmp/monit.out ' "
stop program = "/bin/su -c '/home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js stop'""
mà tôi đã thử nghiệm trong một vỏ với
$ sudo su
# env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/sh
# /bin/su -c '/usr/bin/env APP_ENV=development; /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js start &> /tmp/monit.out '
chạy này trả về trong file /tmp/monit.out
đầu ra chính xác:
Starting nodejs daemon...
nodejs daemon started. PID: 16408
Nhưng khi tôi chạy sudo monit -v monitor node
, nó sẽ hiển thị một lệnh khác nhau, giống hệt exce pt với dấu ngoặc đơn bên trong bị xóa:
The service list contains the following entries:
Process Name = node
Pid file = /home/ec2-user/blah/node.pid
Monitoring mode = active
Start program = '/bin/su -c export APP_ENV=development; /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js start &> /tmp/monit.out ' timeout 30 second(s)
Stop program = '/bin/su -c /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js stop' timeout 30 second(s)
Existence = if does not exist 1 times within 1 cycle(s) then restart else if succeeded 1 times within 1 cycle(s) then alert
Pid = if changed 1 times within 1 cycle(s) then alert
Ppid = if changed 1 times within 1 cycle(s) then alert
System Name = system_ip-xx-xx-xx-xx.ec2.internal
Monitoring mode = active
Tôi không thể tìm thấy bất kỳ điều gì trong tài liệu này. Tài liệu hướng dẫn here dường như là tài liệu tham khảo cuối cùng nhưng thiếu thông qua mã nguồn, tôi không chắc phải làm gì tiếp theo.
Lệnh của tôi hoạt động hoàn hảo mà không có dấu ngoặc kép bị xóa, vì vậy tôi chỉ cần khắc phục sự cố này. Tất cả các ý tưởng và sửa lỗi có thể được chào đón.
thoát trích dẫn một lần không hoạt động – dubeegee