From Sinatra Base object. Get port of application including the base object
- by Poul
I have a Sinatra::Base object that I would like to include in all of my web apps.  In that base class I have the configure method which is called on start-up.
I would like that configure code to 'register' that service with a centralized database. The information that needs to be sent when registering is the information on how to contact this web-service... things like host and port.
I then plan on having a monitoring service that will spin over all registered services and occasionally ping them to make sure they are still up and running.
In the configure method I am having trouble getting the port information.  The 'self.settings.port' variable doesn't seem to work in this method. 
a) any ideas on how to get the port? I have the host.
b) is there a sinatra plug-in that already does something like this so I don't have to write it myself? :-)
  //in my Sinatra::Base code.  lets call it register_me.rb
  
  RegisterMe < Sinatra::Base
  
  configure do
  
  //save host and port information to database
  
  end
  
  get '/check_status'
  
  //return status
  
  end
  
  
  
  //in my web service code
  
  require register_me  //at this point, sinatra will initialize the RegisterMe object and call configure
  
  post ('/blah') 
  
  //example of a method for this particular web service
  
  end