未提供项目描述
项目描述
概述
MI项目从GitHub仓库收集数据。您可以使用它来收集存储在本地或Amazon S3云中的数据。对于个人使用,请参阅《<使用>》部分。
与mi-scheduler一起,我们为请求的仓库和组织提供自动化数据提取管道,用于数据挖掘。此管道可以自定义安排,例如每日、每周等。
数据提取请求
要请求仓库或组织的数据提取,请在
数据提取管道(图表)
MI管道易于理解,请参见下面的图表
+---------+
|ConfigMap|
+----+----+
|
+--+-------+--------+--+
| | | |
| | mi-scheduler | |
| | | |
+------+---+---+-------+
| | | | |
| | | | |
| | | | |
| Argo Workflows |
| | | | |
| | | | |
+---------------v---v---v---v----v------------------+ +-------------------- +--------------------+
| | | Visualization | | Recommendation |
| +---------+ +---------+ +---------+ | +-------------------+ +--------------------+
| |thoth/ | | AICoE | | your | | | Project Health | | thoth |
| | station| | | | org | | | (dashboard) | | |
| +---------+ +---------+ +---------+ | | | | |
| |solver | |... | |your | | +---------+---------+ +----------+---------+
| | | | | | repos | | thoth-station/mi ^ ^
| |amun | |... | X X X X X | | | (Meta-information Indicators) | |
| | | | | | | | +-------------+---------------+
| |adviser | |... | | | | |
| | | | | | | | |
| |.... | |... | | | | +-----------------+-------------------+
| | | | | | | | | |
| +---------+ +---------+ +---------+ | | Knowledge Processsing |
| | | |
+-----------------------+---------------------------+ +-----------------+-------------------+
GitHub repositories | ^
| +--------------------------------------------------------+ |
| | | |
| | Entities Analysis +-------> Knowledge | |
+---------------->-+ +--------------------+
+---------+----------------+----------+------------------+
| Issues | Pull Requests | Readmes | etc........... |
| | | | |
+---------+----------------+----------+------------------+
MI可以从GitHub中提取什么?
MI分析srcopsmetrics/pages/entities页面指定的实体。实体基本上是要检查的仓库元数据(例如问题或拉取请求),从中提取指定的功能并存储到dataframe中。
MI基本上围绕PyGitHub模块提供,以提供无心的数据提取,同时处理API速率限制和数据更新。
安装
pip
MI通过PyPI提供,因此您可以这样做
pip install srcopsmetrics
git
或者,您可以通过克隆仓库来安装srcopsmetrics
git clone https://github.com/thoth-station/mi.git
cd mi
pipenv install --dev
使用
设置
连接到GitHub
要从GitHub提取数据,必须配置访问令牌。要生成一个,请阅读此
要使用该令牌与mi一起使用,将GITHUB_ACESS_TOKEN环境变量设置为令牌值,例如
export GITHUB_ACESS_TOKEN=<token_string>
或
GITHUB_ACESS_TOKEN=<token_string> python -m srcopsmetrics.cli ...
等等。
数据位置
要本地存储数据,请在调用CLI时使用-l,或在使用
默认情况下,
S3_ENDPOINT_URL Ceph主机名
CEPH_BUCKET Ceph存储桶名称
CEPH_BUCKET_PREFIX Ceph 前缀
CEPH_KEY_ID Ceph 密钥 ID
CEPH_SECRET_KEY Ceph 密钥
有关 Ceph 存储的更多信息,请参阅此处
CLI
要查看所有可用命令及其描述,请使用
python -m srcopsmetrics.cli --help
以下是一些通用用法示例
本地获取存储库 PullRequest 数据
python -m srcopsmetrics.cli --create --is-local --repository foo_repo --entities PullRequest
相当于
python -m srcopsmetrics.cli -clr foo_repo -e PullRequest
本地获取组织 PR 数据
python -m srcopsmetrics.cli -clo foo_org -e PullRequest
本地获取多个存储库 PR 数据
python -m srcopsmetrics.cli -clr foo_repo,bar_repo -e PullRequest
本地获取多个实体数据
python -m srcopsmetrics.cli -clr foo_repo -e PullRequest,Issue,Commit
元信息实体数据
如何加载数据
指标
要了解更多关于从数据中提取的指标,请参阅元信息指标。
如何贡献
随时欢迎打开新的问题或参与现有的问题!
自定义实体和指标
如果您想通过添加新的实体或指标来贡献,这些实体或指标将用于分析 GitHub 存储库,请随时打开一个问题并描述为什么您认为这个新的实体应该进行分析以及这样做的好处是什么,根据 thoth-station/mi 项目的目标。
创建问题后,您可以等待 thoth-station 开发者的回复。请记住在您的 Pull Request 中引用该问题。
实现
查看模板实体以获取满足自定义实体实现的必要条件的要求。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。
源分发
构建分发
srcopsmetrics-2.12.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e3ebcad9608456afc001c74b441adb1e1f815bfe3f7c195239f474375015fe37 |
|
MD5 | 5e6a9d29bc1259cbcb35cb1f70170337 |
|
BLAKE2b-256 | caf67a60083e04673dc8c4fef9cd85576fd4552a646a07ae37c4059981fb6e26 |