Tag: 分析

如何在Ruby on Rails中分析请求?

如何配置控制器操作? 我的一个观点是花了相当长的时间来渲染,我想把它分解。 我看到了script/performance/profiler ,但似乎只能访问全局范围。

在用户注册/使用Rails + Devise登录时执行JS代码

我正在查看Kissmetrics(分析应用程序)JS API文档,他们有一个“识别”方法,可以让您告诉Kissmetrics有关用户的信息。 以下是他们的文档所说的内容: 我们建议您在两种情况下调用身份识别: 用户成功注册时用户通过cookie或登录页面成功登录时 实现这一目标的最佳方法是什么? 如何检测用户刚刚注册或登录?

在Rails中捕获UTM参数

我试图在URL中捕获UTM Params以将Source,Campaign等添加到用户帐户。 可悲的是,我似乎无法弄清楚如何捕获这些参数。 据我所知,我遵循博客文章http://www.matthuggins.com/articles/tracking-new-user-registrations-by-source-search-terms 所以,在我的应用程序控制器中我有以下内容 ApplicationController.class_eval do before_filter :capture_referrer protected def capture_referrer session[:referrer] = request.env[‘HTTP_REFERER’] if !session[:referrer] end end 在用户控制器中创建Action @user.referrer = session[:referrer] 在USer模型中: def set_traffic_source if self.referrer url = URI.parse(self.referrer) self.source ||= uri.host.downcase.gsub(/^www\./, ”) self.traffic_keywords ||= search_termins(uri) end end 这一切都很好,为了捕捉引用者 – 但我实际上想要读出URI传入的UTM。 我怎么会这样呢?

Javascript包含以后不在页面中加载

我们有一个Rails应用程序,我们将应用程序依赖项包含在application.js中的html头中: //= require jquery //= require analytics // other stuff… 然后在单个页面上,我们在页面底部有一个脚本标记用于analytics : analytics.track(‘on that awesome page’); 这通常很好,但偶尔我们会看到错误analytics is not defined ,最近才在Chrome 43上analytics is not defined 。因为所有内容都应该同步加载,这似乎应该是开箱即用的,但我将脚本更改为: $(document).ready(function () { analytics.track(‘on that awesome page’); }); 而现在我们偶尔会看到$ is not defined 。 我们没有看到来自同一IP的任何其他错误,否则我会怀疑application.js出了什么问题。 任何其他想法为什么它可能会破裂? 您可以在此处查看示例页面。 完整的application.js : // Polyfills //= require es5-shim/es5-shim //= require es5-shim/es5-sham //= require polyfills […]

用自定义create覆盖’Devise :: RegistrationsController’会产生NoMethodError

如果我以错误的方式解决这个问题,请告诉我。 我正在尝试在create方法中向User添加一些自定义属性,并在保存用户时调用我的Analytics方法。 我定义了一个新的控制器: class RegistrationsController after_sign_up_path_for(resource) else set_flash_message :notice, :”signed_up_but_#{resource.inactive_message}” if is_flashing_format? expire_data_after_sign_in! respond_with resource, :location => after_inactive_sign_up_path_for(resource) end else clean_up_passwords resource respond_with resource end end end 这个创建方法唯一不同的是我在保存和运行Analytics之后添加了referral_code和public_id 。 Analytics.identify( user_id: resource.id.to_s, traits: { email: resource.email }) 当我创建一个用户时,我正在获得 undefined method `is_flashing_format?’ for # 我不明白为什么这个方法没有被inheritance。 这甚至是修改设计或添加属性/添加分析的正确方法吗?

来自控制器的Mixpanel.track

我有一个提交简单表单(电子邮件)的应用程序。 我将MixPanel的跟踪分析集成到应用程序中,并希望每次与此表单进行交互时进行跟踪 – 特别是当用户成功/不成功提交表单时,以及他们的电子邮件是什么。 在做了一些研究之后,似乎最简单的方法是在控制器级别跟踪(我正在运行validation,并做出是否合法提交的总体决策)。 这将需要从控制器运行JS函数。 这可能吗? 有没有更好的方法呢?

ruby快速阅读标准

什么是从STDIN读取多个1000000个字符(整数)的最快方法,并将其拆分为一个字符整数(不是字符串)的数组? 123456 > [1,2,3,4,5,6]

如何在Ruby应用程序中找到性能瓶颈?

我编写了一个Ruby应用程序,它可以解析来自不同格式html,xml和csv文件的大量数据。 如何找出代码中哪些区域占用时间最长? 有没有关于如何提高Ruby应用程序性能的好资源? 或者您是否遵循始终遵循的任何性能编码标准? 例如,你总是加入你的字符串 output = String.new output << part_one output << part_two output << '\n' 或者你会用吗? output = “#{part_one}#{part_two}\n”

Ruby文本分析

是否有任何Rubygem或文本分析? 单词频率,模式检测等(最好有法语的理解)

为什么使用String#count比使用Ruby中的String #chars更快地计数字母?

使用以下基准: def create_genome “gattaca” * 100 end def count_frequency_using_chars(sequence) 100000.times do sequence.chars.group_by{|x| x}.map{|letter, array| [letter, array.count]} end end def count_frequency_using_count(sequence) 100000.times do [“a”, “c”, “g”, “t”].map{|letter| sequence.count(letter)} end end sequence = create_genome count_frequency_using_chars(sequence) count_frequency_using_count(sequence) 我发现,在基于C的Ruby中,对于1.8和1.9.2,使用String#count(letter)比使用Enumerable#group_by和Array#count它们进行排序和计算快约50倍。 我对此感到有些惊讶,因为String#count方法每次迭代读取字符串四次,而后者只读取一次。 我尝试在ruby-prof和perftools.rb下运行代码,并且它们都只表示String#chars #chars占用了90%的时间,没有分解花费90%的时间。 如果我不得不猜测为什么会有差异,我会说创造7000万个单字符串会很昂贵,但我怎么能知道呢? ( 更新 : String#chars mainly_execute_a_trivial_block不是罪魁祸首 – 请参阅mainly_execute_a_trivial_block的基准测试) 编辑:使用1.9.2补丁级别180的当前基准: require ‘pp’ require ‘benchmark’ def create_genome “gattaca” * […]