跳转到主要内容

匿名使用统计收集器

项目描述

https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg

此包旨在轻松从您程序的用户中获取使用统计信息。

将收集统计信息,但直到用户选择加入之前不会上传。将在stderr上打印一条消息,要求用户明确选择加入或退出。

用法

您可以通过将usagestats添加到项目的要求中并使用库来轻松从程序中收集信息。以下是一个示例

import usagestats
import sys


optin_prompt = usagestats.Prompt(enable='cool_program --enable-stats',
                                 disable='cool_program --disable-stats')

# Location where to store stats
# Also allocates a unique ID for the user
# The version is important, since the information you log (or the format)
# might change in later versions of your program
stats = usagestats.Stats('~/.myprog/usage_stats',
                         optin_prompt,
                         'https://usagestats.example.org/',
                         unique_user_id=True,
                         version='0.1')


def main():
    if len(sys.argv) < 2:
        pass
    elif sys.argv.get(1) == '--enable-stats':
        stats.enable_reporting()
        sys.exit(0)
    elif sys.argv.get(1) == '--disable-stats':
        stats.disable_reporting()
        sys.exit(0)

    if sys.version_info < (3,):
        # Stores some info, will be reported when submit() is called
        stats.note({'mode': 'compatibility'})

    # Report things
    stats.submit(
        # Dictionary containing the info
        {'what': 'Ran the program'},
        # Flags making usagestats insert more details
        usagestats.OPERATING_SYSTEM,  # Operating system/distribution
        usagestats.PYTHON_VERSION,    # Python version info
        usagestats.SESSION_TIME,      # Time since Stats object was created
    )


if __name__ == '__main__':
    main()

submit()默认情况下将信息存储在指定的目录中。除非用户选择加入,否则不会报告任何内容;消息将简单地打印到stderr

Uploading usage statistics is currently DISABLED
Please help us by providing anonymous usage statistics; you can enable this
by running:
    cool_program --enable-stats
If you do not want to see this message again, you can run:
    cool_program --disable-stats
Nothing will be uploaded before you opt in.

服务器

要收集报告,任何服务器都可以;报告通过 POST 以 LF 分隔的键值对列表形式上传。包含了一个简单的 mod_wsgi 脚本;它将每个报告写入单独的文件。用您喜欢的语言(PHP、Java)以及自己的后端编写自己的实现应该是相当直接的。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。

源分布

usagestats-1.0.1.tar.gz (16.4 kB 查看散列)

上传时间

构建分布

usagestats-1.0.1-py2.py3-none-any.whl (10.6 kB 查看散列)

上传时间 Python 2 Python 3

支持