tengo un servicio web Sinatra :: Base cual quiero empezar desde un programa de Ruby línea de comandos, así que tengo esto:Cómo iniciar silenciosamente 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
Esto funciona como se esperaba, sino que lanza hacia fuera:
$ 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
...
Y quiero que sea silencioso, y déjame dar salida a lo que quiero. Por ejemplo, si comienzo no endemoniada Quiero simplemente ver algún mensaje desde el programa de línea de comandos y la salida del registro, algo así como:
$ 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
...
también le gustaría silencio apagado, ocultándolo:
== Sinatra has ended his set (crowd applauds)
Una última pregunta, ¿es esta la mejor opción para iniciar una aplicación de sinatra con thin desde el interior de un código de aplicación (en este caso, el script de ruby)?
Desactivación': logging' no funciona para mí. – Nakilon
Si usa SinatraBase, debe hacerlo dentro de la declaración de clase ... http://www.sinatrarb.com/intro.html#Sinatra::Base%20-%20Middleware,%20Libraries,%20and%20Modular%20Apps – GroovyCakes
También podría intentar la configuración de habilitar/deshabilitar estilo de las opciones – GroovyCakes