2011-12-23 9 views
7

내가 명령 줄 루비 프로그램에서 시작하고자하는시나 :: 자료 웹 서비스를, 그래서이 있습니다Sinatra + Thin을 자동으로 시작하는 방법?

예상하지만 밖으로 던져으로이 작동
# command line program file 
require 'mymodule/server' 

puts "Running on 0.0.0.0:4567, debugging to STDOUT..." 

MyModule::Server.run! bind: '0.0.0.0', port: 4567, environment: :production 

:

$ myscript 
Running on 0.0.0.0:4567, debugging to STDOUT... 

== Sinatra/1.3.1 has taken the stage on 4567 for production with backup from Thin 
>> Thin web server (v1.3.1 codename Triple Espresso) 
>> Maximum connections set to 1024 
>> Listening on 0.0.0.0:4567, CTRL+C to stop 

127.0.0.1 - - [23/Dec/2011 18:44:55] "POST /images HTTP/1.1" 200 360 0.0133 
... 

그리고 나는 그것이 침묵하고, 내가 원하는 것을 출력하게하고 싶다. 예를 들어, 내가 그것을 시작하면 난 그냥 같은 명령 줄 프로그램에서 일부 메시지와 로그 출력, 무언가를보고 싶어 daemonized하지 :

== Sinatra has ended his set (crowd applauds) 
:

$ myscript 
Running on 0.0.0.0:4567, debugging to STDOUT... 
127.0.0.1 - - [23/Dec/2011 18:44:55] "POST /images HTTP/1.1" 200 360 0.0133 
... 

또한 자동으로 종료 그것은 숨어 싶습니다

마지막 질문 하나는 애플리케이션 코드 (이 경우에는 루비 스크립트) 내부에서 씬 아트를 시작하는 가장 좋은 옵션입니까?

답변

2

당신은 지금까지 이것이시나 응용 프로그램을 시작하는 가장 좋은 방법인지하지

set :logging, false 

http://www.sinatrarb.com/configuration.html

으로 로그인시나을 해제 할 수 있습니다 ... 당신이보고 싶을 수도 " 감독 "보석, 그리고"예를 들어 (Heroku.com 사용) Procfile "

http://ddollar.github.com/foreman/

+2

비활성화': logging' 나를 위해 작동하지 않습니다. – Nakilon

+0

SinatraBase를 사용하는 경우 클래스 선언에서 수행해야합니다 ... http://www.sinatrarb.com/intro.html#Sinatra::Base%20-%20Middleware,%20Libraries,%20and%20Modular%20Apps – GroovyCakes

+0

옵션의 활성화/비활성화 스타일 설정을 시도 할 수도 있습니다. – GroovyCakes

관련 문제