1. 概述

神策分析在 1.5 版本里面推出了“ 多项目 ”功能。本文介绍多项目管理工具的使用方法。

多项目管理工具提供如下几个功能:

  1. 列出所有项目
  2. 新建项目
  3. 更新项目显示名
  4. 删除项目
  5. 回收已删除项目的资源
  6. 重置登录系统的密码

此外:

  • 关于项目重置功能请参见 多项目;
  • 云版多项目相关操作请联系值班同学处理;

2. 使用方法

请在 sa_cluster 账户下使用该工具。从 root 切换到 sa_cluster 账户的方法:

su - sa_cluster
BASH
  • 请注意 su 与 sa_cluster 中间的减号。

2.1. 列出所有项目

执行以下命令可以列出所有项目:

project_tools -m list
BASH
spadmin project -m list
BASH
sbpadmin project show
BASH

运行输出样例如下:

--------------------------------------
project.id: 1
name: default
cname: 默认项目
status: AVAILABLE
super_token: FFNJ24C31
normal_token: 8FWI1GN1F
create_time: 2016-06-29 23:46:39.0
--------------------------------------

当前共 1 个有效 project.
许可允许最多使用 2 个项目.
CODE

其中 status 共有 3 种取值,分别含义如下:

  • CREATED: 已经创建,不能导入数据,一般出现在刚创建项目的前 1 分钟内,之后转为 PREPARED;
  • PREPARED: 可以导入,但还不能查询,该状态一般出现在新项目创建还没有导入数据;
  • AVAILABLE: 可以查询,即已经导入行为事件数据;

2.2. 新建项目

执行以下命令可以新建项目:

project_tools -m create -n <项目名称> [-c <项目显示名>] -p <新项目admin的密码> [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>]
BASH
spadmin project -m create -n <项目名称> [-c <项目显示名>] -p <新项目admin的密码> [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>] [--disable_schema_limited]
BASH
sbpadmin project create -n <项目名称> [-c <项目显示名>] -p <新项目admin的密码> [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>] [--disable-schema-limited]
BASH

1.17 版本新建项目默认开启数据强校验模式,如需关闭可参考下方 更新项目配置 的命令,关于数据强校验模式可以参考文档 数据强校验模式

参数解释:

  • -n, --name: 项目名称,需要是一个合法的变量名,即英文大小写字母、数字以及下划线组成,第一个字符不能为数字;
  • -p, --password: 新项目的admin帐号的密码;
  • -c, --cname: 项目显示名,可以是中文名,用于界面显示。此参数可选,若不输入则项目显示名同项目名称;
  • --normal_token: 1.6 新增配置项,项目的 Normal Token。可选参数,若不设置则值为空;
  • --super_token: 1.6 新增配置项,项目的 Super Token。可选参数,若不设置则值为空;
  • --disable_schema_limited  关闭数据强校验模式 (1.17 版本开始支持)。
  • --disable-schema-limited  关闭数据强校验模式 (SBP 1.3.0+ 版本请使用此配置)。

例子:

project_tools -m create -n my_project -c 我的项目 -p PasswordTest123 
BASH
spadmin project -m create -n my_project -c 我的项目 -p PasswordTest123 --disable_schema_limited
BASH
sbpadmin project create -n my_project -c 我的项目 -p PasswordTest123 --disable-schema-limited
BASH


执行以上命令即可创建名为 my_project ,显示名为“我的项目”的新项目,登录时使用帐号 admin,密码 PasswordTest123。

在创建这个账号之后,就可以使用这个账号登录相应的项目,然后再在界面上创建账号和分配权限了。

  • 若当前项目个数已达到许可所限制的项目数最大值,则无法再创建新项目。您可以删除项目或更换许可后再创建新项目。

2.3. 更新项目配置

执行以下命令可以更新项目配置:

project_tools -m update -n <项目名称> [-c <项目显示名>] [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>] [--clear_normal_token] [--clear_super_token]
BASH
spadmin project -m update -n <项目名称> [-c <项目显示名>] [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>] [--clear_normal_token] [--clear_super_token] [--disable_schema_limited]
BASH
sbpadmin project update -n <项目名称> [-c <项目显示名>] [--normal_token <数据导入 Normal Token>] [--super_token <数据导入 Super Token>] [--clear_normal_token] [--clear_super_token] [--disable-schema-limited]
BASH

参数解释:

  • -n, --name: 要修改配置的项目名;
  • -c, --cname: 设置项目显示名,可选参数;
  • --normal_token: 1.6 新增配置项,设置项目的 Normal Token,可选参数;
  • --super_token: 1.6 新增配置项,设置项目的 Super Token,可选参数;
  • --clear_normal_token: 1.6 新增配置项,将 Normal Token 设置为空值,可选参数;
  • --clear_super_token: 1.6 新增配置项,将 Super Token 设置为空值,可选参数;
  • --enable_schema_limited   开启数据强校验模式 (1.17 版本开始支持)
  • --disable_schema_limited  关闭数据强校验模式 (1.17 版本开始支持)
  • --disable-schema-limited  关闭数据强校验模式 (SBP 1.3.0+ 版本请使用此配置)。

例子:

project_tools -m update -n my_project -c 新的项目
BASH
spadmin project -m update -n my_project -c 新的项目 --disable_schema_limited
BASH
sbpadmin project update -n my_project -c 新的项目 --disable-schema-limited
BASH

2.4. 删除项目

执行以下命令可以删除项目:

project_tools -m delete -n <项目名称>
BASH
spadmin project -m delete -n <项目名称>
BASH
sbpadmin project delete -n <项目名称>
BASH

参数解释:

  • -n, --name: 删除项目的项目名称;

例子:

project_tools -m delete -n my_project
BASH
spadmin project -m delete -n my_project
BASH
sbpadmin project delete -n my_project
BASH
  • 请注意:项目删除后不可恢复,请谨慎操作!
  • 默认项目 default 不能删除,但可以重置。关于重置功能请参见 多项目

2.5. 回收已删除项目的资源

执行以下命令可以回收已删除项目的资源:

project_tools -m purge
BASH
spadmin project -m purge
BASH
sbpadmin project purge
BASH
  • 请注意:该操作运行时间较长,请耐心等待!建议开启 screen 作业后再进行如上操作,避免因执行时间过长终端突然断开导致上述命令执行失败。screen 作业开启方式:screen -S 作业名,如:screen -S sensorsdata
  • 在sbp 1.4.0版本,项目purge工具在原来的基础上增加了更多信息,使得purge过程更加可视化

2.6. 用户工具

使用这个工具可以重置 admin 密码:

sbpadmin account -u admin -P PASSWORD -p default -r analyst
CODE
spadmin account -u admin -P PASSWORD -p default -r analyst
CODE
user_tools -username admin -password PASSWORD -project default
CODE
  • SBP 0.5+ & 神策分析版本 >= 1.14 参数解释:
    • -u: 指定用户名(必须为邮箱格式),必选;
    • -P: 指定用户密码(必须使用 8 至 30 个字母、数字和符号的组合),必选;
    • -p: 指定项目英文名,必选;
    • -r: 指定角色英文名,修改密码非必选,创建新用户必选。默认有 admin(管理员)、analyst(分析师)、guest(普通用户)三种,如果要指定自定义角色,请联系值班同学处理。
    • -g: 指定是否为平台账号,默认为 false(仅限 1.15)

示列:

  • 更新 admin 账号密码

将 admin 账号的密码更新为 123+++qwe

sbpadmin account --username admin --password 123+++qwe -p default
CODE
  • 更新 平台账号 密码

将 default 项目下账号名为  1@xx.com  的平台账号密码更新为 123+++qwe

sbpadmin account -u 1@xx.com -P 123+++qwe -p default -g true
CODE
  • 更新 项目账号 密码,

将 default 项目下账号名为  1@xx.com  的项目账号密码更新为 123+++qwe

sbpadmin account -u 1@xx.com -P 123+++qwe -p default -g false
CODE
  • 创建 平台账号 绑定角色(慎用,请从页面进行操作)

在 default 项目下创建账号名为  2@xx.com ,密码为 123+++qwe ,角色为 admin 的平台账号

sbpadmin account -u 2@xx.com -P 123+++qwe -p default -r admin -g true
CODE
  • 创建 项目账号 绑定角色(慎用,请从页面进行操作)

在 default 项目下创建账号名为  2@xx.com ,密码为 123+++qwe, 角色为 admin 的项目账号

sbpadmin account -u 2@xx.com -P 123+++qwe -p default -r admin -g false
CODE


  • 神策分析版本 < 1.14 参数解释:
    • -username: 指定用户名(无限制),若指定用户不存在则创建,权限为管理员;
    • -password: 指定用户密码(无限制);
    • -project: 指定项目英文名;