Sha256: e0bc279d9f9cc160b20830462c1df8e620ee21c26507fde6a77845bf4d877457

Contents?: true

Size: 1.25 KB

Versions: 84

Compression:

Stored size: 1.25 KB

Contents

# This is a sinatra app packaged in a gem, running directly from the gem.
#
raise "ENV['PICKY_LOG_FILE'] needs to be set for the statistics app to be run. Use either it, or run 'picky stats <logfile> <port>'." unless ENV['PICKY_LOG_FILE']

log_file = File.expand_path ENV['PICKY_LOG_FILE'], Dir.pwd
port     = ENV['PICKY_STATISTICS_PORT'] || 4567

Dir.chdir File.expand_path('..', __FILE__)

require 'sinatra'
require 'haml'

begin
  require File.expand_path '../../picky-statistics', Dir.pwd
rescue LoadError => e
  require 'picky-statistics'
end

Stats = LogfileReader.new log_file

class PickyStatistics < Sinatra::Base
  
  set :static, true
  set :public_folder, File.expand_path('.', Dir.pwd)
  set :views,  File.expand_path('views', Dir.pwd)
  set :haml, { :format => :html5 }
  
  # Returns an index page with all the statistics.
  #
  get '/' do
    haml :'/index'
  end

  # Returns statistics data in JSON for the index page.
  #
  get '/index.json' do
    Stats.since(0).to_json
  end
  
  # Returns statistics data in JSON since the last request.
  #
  get '/since_last.json' do
    Stats.since_last.to_json
  end
  
end

puts "Clam, Picky's friend, is looking at Picky's logfile\n#{log_file}\nand showing results on port #{port}."
PickyStatistics.run! :port => port

Version data entries

84 entries across 84 versions & 1 rubygems

Version Path
picky-statistics-4.31.3 lib/picky-statistics/application/app.rb
picky-statistics-4.31.2 lib/picky-statistics/application/app.rb
picky-statistics-4.31.1 lib/picky-statistics/application/app.rb
picky-statistics-4.31.0 lib/picky-statistics/application/app.rb
picky-statistics-4.30.0 lib/picky-statistics/application/app.rb
picky-statistics-4.29.0 lib/picky-statistics/application/app.rb
picky-statistics-4.28.1 lib/picky-statistics/application/app.rb
picky-statistics-4.27.1 lib/picky-statistics/application/app.rb
picky-statistics-4.27.0 lib/picky-statistics/application/app.rb
picky-statistics-4.26.2 lib/picky-statistics/application/app.rb
picky-statistics-4.26.1 lib/picky-statistics/application/app.rb
picky-statistics-4.26.0 lib/picky-statistics/application/app.rb
picky-statistics-4.25.3 lib/picky-statistics/application/app.rb
picky-statistics-4.25.2 lib/picky-statistics/application/app.rb
picky-statistics-4.25.1 lib/picky-statistics/application/app.rb
picky-statistics-4.25.0 lib/picky-statistics/application/app.rb
picky-statistics-4.24.0 lib/picky-statistics/application/app.rb
picky-statistics-4.23.2 lib/picky-statistics/application/app.rb
picky-statistics-4.23.1 lib/picky-statistics/application/app.rb
picky-statistics-4.23.0 lib/picky-statistics/application/app.rb