Legato:Ruby 客户端用于 Google Analytics 核心报告和管理 API
1. 安装指南
1.1 安装 Ruby 环境
在安装 Legato 之前,确保你的系统已经安装了 Ruby 环境。你可以通过以下命令检查 Ruby 是否已安装:
ruby -v
如果未安装 Ruby,请参考 Ruby 官方安装指南 进行安装。
1.2 安装 Legato Gem
Legato 是一个 Ruby Gem,可以通过 Bundler 或直接使用 gem 命令进行安装。
使用 Bundler 安装
在你的 Gemfile 中添加以下内容:
gem 'legato'
然后运行以下命令安装 Gem:
bundle install
使用 gem 命令安装
你也可以直接使用 gem 命令安装 Legato:
gem install legato
2. 项目的使用说明
2.1 获取 OAuth2 访问令牌
首先,你需要从 Google 获取一个 OAuth2 访问令牌。你可以参考 Google OAuth2 文档 获取访问令牌。
access_token = OAuth2 Access Token # 从 Google 获取
2.2 创建用户
使用获取到的访问令牌创建一个新的用户:
user = Legato::User.new(access_token)
2.3 列出账户和配置文件
你可以列出用户有权访问的所有账户和配置文件:
user.accounts
user.accounts.first.profiles
2.4 获取配置文件
你可以获取用户有权访问的配置文件:
profile = user.profiles.first
2.5 使用配置文件
配置文件可以用于查询 Google Analytics 数据。例如,你可以定义一个模型来查询退出率和页面浏览量:
class Exit
extend Legato::Model
metrics :exits, :pageviews
dimensions :page_path, :operating_system, :browser
end
profile.exit # 返回一个 Legato::Query 对象
profile.exit.each {} # 任何可枚举的操作都会触发对 GA 的请求
3. 项目 API 使用文档
3.1 指标和维度
你可以使用 metrics 和 dimensions 方法来定义查询的指标和维度:
metrics :exits, :pageviews
dimensions :page_path, :operating_system, :browser
3.2 过滤
你可以使用 filter 方法来定义查询过滤器:
filter(:high_exits) { gte(:exits, 2000) }
filter(:low_pageviews) { lte(:pageviews, 200) }
3.3 使用和链式过滤
你可以将配置文件作为参数传递给过滤器,并链式调用多个过滤器:
Exit.for_browser("Safari", profile)
Exit.high_exits.low_pageviews(profile)
3.4 实时报告
你可以使用 realtime 方法进行实时报告查询:
Exit.results(profile).realtime
4. 项目安装方式
4.1 使用 Bundler 安装
在你的 Gemfile 中添加以下内容:
gem 'legato'
然后运行以下命令安装 Gem:
bundle install
4.2 使用 gem 命令安装
你也可以直接使用 gem 命令安装 Legato:
gem install legato
4.3 验证安装
安装完成后,你可以通过以下命令验证 Legato 是否安装成功:
irb
require 'legato'
如果没有报错,说明 Legato 已成功安装。
总结
Legato 是一个强大的 Ruby 客户端,用于与 Google Analytics 核心报告和管理 API 进行交互。通过本文档,你可以了解如何安装、配置和使用 Legato 来查询和管理 Google Analytics 数据。希望本文档能帮助你更好地理解和使用 Legato。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
new-apiAI模型聚合管理中转分发系统,一个应用管理您的所有AI模型,支持将多种大模型转为统一格式调用,支持OpenAI、Claude、Gemini等格式,可供个人或者企业内部管理与分发渠道使用。🍥 A Unified AI Model Management & Distribution System. Aggregate all your LLMs into one app and access them via an OpenAI-compatible API, with native support for Claude (Messages) and Gemini formats.JavaScript01
idea-claude-code-gui一个功能强大的 IntelliJ IDEA 插件,为开发者提供 Claude Code 和 OpenAI Codex 双 AI 工具的可视化操作界面,让 AI 辅助编程变得更加高效和直观。Java01
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility.Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00