Module: Statlysis
- Defined in:
- lib/statlysis.rb,
lib/statlysis.rb,
lib/statlysis.rb,
lib/statlysis/cron.rb,
lib/statlysis/clock.rb,
lib/statlysis/utils.rb,
lib/statlysis/common.rb,
lib/statlysis/dataset.rb,
lib/statlysis/formula.rb,
lib/statlysis/results.rb,
lib/statlysis/similar.rb,
lib/statlysis/cron/top.rb,
lib/statlysis/cron_set.rb,
lib/statlysis/constants.rb,
lib/statlysis/map_reduce.rb,
lib/statlysis/timeseries.rb,
lib/statlysis/cron/timely.rb,
lib/statlysis/configuration.rb,
lib/statlysis/javascript/count.rb,
lib/statlysis/multiple_dataset.rb,
lib/statlysis/cron/top/hotest_items.rb,
lib/statlysis/cron/top/lastest_visits.rb,
lib/statlysis/multiple_dataset/mongoid.rb,
lib/statlysis/cron/timely/one_dimension.rb,
lib/statlysis/multiple_dataset/active_record.rb,
lib/statlysis/cron/timely/multiple_dimensions.rb
Overview
TODO support ActiveRecord
Defined Under Namespace
Modules: Common, Javascript, TimeSeries, Utils Classes: ActiveRecordDataset, Clock, Configuration, Cron, CronSet, Dataset, Formula, HotestItems, LastestVisits, MapReduce, MongoidDataset, MultipleDataset, Railtie, Results, Similar, SingleKv, Timely, Top
Constant Summary collapse
- TimeUnits =
%w[hour day week month year]
- DateTime1970 =
Time.zone.parse("19700101").in_time_zone
- TimeUnitToTableSuffixHash =
(TimeUnits + [false]).inject({}) {|_h, _i| _h[_i] = (_i ? _i[0] : 'a'); _h }
- DefaultTableOpts =
{:charset => "utf8", :collate => "utf8_general_ci", :engine => "MyISAM"}
- DefaultNotImplementWrongMessage =
"Not implement yet, please config it by subclass".freeze
- SymbolToClassInDataType =
{ :string => String, :datetime => DateTime, :time => Time, :integer => Integer, :float => Float, :text => String }
Class Attribute Summary collapse
-
.logger ⇒ Object
Returns the value of attribute logger.
Class Method Summary collapse
- .always ⇒ Object
-
.configuration ⇒ Object
delagate config methods to Configuration.
-
.daily ⇒ Object
代理访问 各个时间类型的 crons.
- .hourly ⇒ Object
- .setup(&blk) ⇒ Object
- .source_to_database_type ⇒ Object
- .time_log(text = nil) ⇒ Object
Class Attribute Details
.logger ⇒ Object
Returns the value of attribute logger.
53 54 55 |
# File 'lib/statlysis.rb', line 53 def logger @logger end |
Class Method Details
.always ⇒ Object
61 |
# File 'lib/statlysis.rb', line 61 def always; CronSet.new(Statlysis.configuration.always_crons) end |
.configuration ⇒ Object
delagate config methods to Configuration
47 |
# File 'lib/statlysis.rb', line 47 def configuration; Configuration.instance end |
.daily ⇒ Object
代理访问 各个时间类型的 crons
59 |
# File 'lib/statlysis.rb', line 59 def daily; CronSet.new(Statlysis.configuration.day_crons) end |
.hourly ⇒ Object
60 |
# File 'lib/statlysis.rb', line 60 def hourly; CronSet.new(Statlysis.configuration.hour_crons) end |
.setup(&blk) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/statlysis.rb', line 29 def setup &blk raise "Need to setup proc" if not blk logger.info "Start to setup Statlysis" if ENV['DEBUG'] time_log do self.configuration.instance_exec(&blk) end end |
.source_to_database_type ⇒ Object
56 |
# File 'lib/statlysis.rb', line 56 def source_to_database_type; @_source_to_database_type ||= {} end |
.time_log(text = nil) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/statlysis.rb', line 38 def time_log text = nil t = Time.now logger.info text if text yield if block_given? logger.info "Time spend #{(Time.now - t).round(2)} seconds." if ENV['DEBUG'] logger.info "-" * 42 if ENV['DEBUG'] end |