实时测量网站访问和网页浏览量的最佳方法是什么?

时间:2012-08-27 01:59:27

标签: google-analytics newrelic website-metrics

我目前使用Adobe Omniture SiteCatalyst,Google Analytics和New Relic。这三个都提供访问和页面查看指标。 SiteCatalyst没有我所知道的API,他们的数据往往落后数小时。 Google Analytics和New Relic都提供实时API,但我发现所提供的指标在不同供应商之间存在很大差异。

衡量实时访问次数(页面浏览量,唯一身份访问者等)的最佳方法(API)是什么?

最终,我打算使用这些数据向我的商业客户提供实时转化率。

2 个答案:

答案 0 :(得分:3)

Adob​​e SiteCatalyst确实有一个可以使用的实时API。它的功能与SiteCatalyst中的报告功能类似。

这是python示例请求:

import requests
import sha
import binascii
import time

your_report_suite="ReportSuiteId" #The name of the report suite
what_you_are_looking = "someValue"  #value of a the prop that you want to find in the realtime stream

def getRealTimeUsers():
    if mobile:
        url = 'https://api.omniture.com/admin/1.3/rest/?method='
        headers = {'X-WSSE': self.generateHeader()}
        method = 'Report.GetRealTimeReport'
        report_url = url + method
        payload = {
            "reportDescription": {
                "reportSuiteID": your_report_suite,
                "metrics": [
                    {
                        "id": "instances"
                    }
                ],
                "elements": [
                    {
                        "id": "prop4",
                        "search": {
                            "type": "string",
                            "keywords": what_you_are_looking
                        }
                    }

                ]
            }
        }
        response = requests.post(url=report_url, headers=headers, data=json.dumps(payload))
        data = response.json().get('report').get('data')

   def generateHeader():
        # Generates the SC headers for the request
        nonce = str(time.time())
        base64nonce = binascii.b2a_base64(binascii.a2b_qp(nonce))
        created_date = time.strftime("%Y-%m-%dT%H:%M:%SZ", time.localtime())
        sha_object = sha.new(nonce + created_date + self.sc_key)
        password_64 = binascii.b2a_base64(sha_object.digest())

        return 'UsernameToken Username="%s", PasswordDigest="%s", Nonce="%s", Created="%s"' % (
        self.sc_user, password_64.strip(), base64nonce.strip(), created_date)

注意:实时报告要求在报告套件中启用实时功能。此外,实时报告的维度也受到限制。关于所需的特定请求,没有大量文档,但有:https://marketing.adobe.com/developer/documentation/sitecatalyst-reporting/c-real-time

此外,我强烈建议您使用api资源管理器进行实验:https://marketing.adobe.com/developer/api-explorer#Report.GetRealTimeReport

答案 1 :(得分:0)

什么样的延迟是可以接受的?准确性和细节怎么样?基于脚本的系统(如Google Analytics)需要启用Javascript并提供有关访问者人口统计和技术信息的大量详细信息,但原始网络服务器日志文件会为您提供有关每个请求的详细信息(这样可以更好地获取技术洞察力,因为您可以获得有关请求的详细信息图像,热链接,引用和其他文件)。

就个人而言,我只是使用谷歌分析,因为我很熟悉它,也因为他们的CDN服务器意味着我的网站不会加载缓慢;但是我只是在我的原始网络服务器日志上运行典型的日志文件分析软件,但是根据你的软件,这个文件分析可能需要一些时间来生成报告。