Comments (3)
Also, it's not really logging anything to the log file
from daemons.
Another weirdness...
Changed runner to this:
#!/usr/bin/env ruby
require 'daemons'
Daemons.run(
'./script/startup/jobs',
dir_mode: :normal,
dir: '/var/app/support/pids',
log_dir: '/var/app/support/logs/',
logfilename: 'async_runner.log',
backtrace: '/var/app/support/logs/async_runner.error.log',
multiple: true
)
And then did the below:
[root@ip-172-30-4-194 current]# ./script/startup/async_runner start
[root@ip-172-30-4-194 current]# cat ../support/pids/jobs_num0.pid
17433
[root@ip-172-30-4-194 current]# ps ax | grep jobs
17450 ? Sl 0:00 jobs
17479 pts/2 S+ 0:00 grep --color=auto jobs
[root@ip-172-30-4-194 current]# cat ../support/pids/jobs_num0.pid
cat: ../support/pids/jobs_num0.pid: No such file or directory
So the pid inside the file is not the same as the running process, and then the pid file disappears. Calling stop
at this point does nothing.
from daemons.
Which Ruby gem does AsyncRunner
originate from? I do not see an import in your code. I guess that AsyncRunner is created new processes for the tasks which are then obviously
not tracked by daemons. The main spawned process exits after having created the tasks and therefore its .pid file will be cleaned up. I guess its just not a good idea to combine AsyncRunner and daemons. What you actually want is having :multiple set to true and then call your ./script/startup/async_runner start
as many times as the number of desired worker processes.
from daemons.
Related Issues (20)
- Monitored daemon with multiple=false improperly runs multiple times HOT 1
- OSX hangs on close_io HOT 8
- Failure to install development dependency pry-byebug with '~> 0' version constrain HOT 4
- Stopping daemon log file error? HOT 4
- apps inherit app_name even when new name is specified HOT 1
- Windows: fork() function is unimplemented on this machine (NotImplementedError) HOT 5
- Where is the documentation? HOT 1
- run many workers HOT 2
- Run n Instances of a script parallelly in background and kill all of them when needed.
- Run script files in background (as daemons) HOT 2
- Turns out delayed_job was executing a job causing a segmentation fault, which would kill the delayed_job daemon. HOT 1
- Why parent process does not care about child
- Detatch doesn't consider external logging
- Question: Semantic Versioning HOT 2
- Make working directory compatible with macOS Catalina
- `daemons` always exits with zero
- Problematic behavior when handling TERM Signal
- NoMethodError: undefined method `positive?' for 20:Fixnum
- Zombie/Defunct process when monitoring using pidfiles
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from daemons.