面向python iot应用程序的auklet性能监视代理

auklet的Python项目详细描述


Auklet - Problem Solving Software for Python

用于python的auklet

这是Auklet的正式python代理。它正式支持python 2.7.9+和3.4-3.7,并运行在大多数基于posix的操作系统(debian、ubuntu core、raspbian、qnx等)上。

功能

  • 自动报告未处理的异常
  • 自动功能性能问题报告
  • 所有问题的位置、系统架构和系统度量标识
  • 能够定义数据使用限制

合规性

Auklet是一个边缘优先的应用程序性能监视器;因此,从版本1.0.0开始,我们保持以下符合性级别:

  • 汽车安全完整性等级B(ASIL B)

如果您所在行业需要额外的合规性,请通过hello@auklet.io联系团队。

快速启动

使用pip安装代理:

pip install auklet

要在应用程序中设置auklet监视:

fromauklet.monitoringimportMonitoringauklet_monitoring=Monitoring(api_key="<API_KEY>",app_id="<APP_ID>",release="<CURRENT_COMMIT_HASH>")auklet_monitoring.start()# Call your main functionmain()auklet_monitoring.stop()

授权

要授权应用程序,您需要同时提供API密钥和应用程序ID。这些值在应用程序的连接设置和初始设置期间都可用。

可选:释放跟踪

您可以跟踪版本并确定哪些设备正在运行哪种类型的代码。为此,您可以提供已部署代码的git commit散列和可以修改的版本字符串。此版本值应通过release参数传递到构造函数中,自定义版本应通过version参数传递。发布值必须是表示应用程序部署版本的git commit散列。版本值是一个字符串,您可以将其设置为要定义版本的任何值。请注意,您可以提供发布值和/或版本值。

  • 提供release可以在链接github时显示已识别错误的代码段。
  • 包含version可以跟踪出现问题的代码版本。
curl -X POST https://api.auklet.io/v1/releases/ \
            -H "Content-Type: application/json"\
            -H "Authorization: JWT <API_KEY>"\
            -d '{"application": "<APP_ID>", "release": "'$(git rev-parse HEAD)'", "version": "<YOUR_DEFINED_VERSION>"}'

通过子流程获得释放

如果打包并部署整个git存储库(包括.git目录),并且设备上安装了git,则可以通过子进程获取提交散列:

git_commit_hash=subprocess.check_output(['git','rev-parse','HEAD']).decode('utf8').strip('\n')

通过环境变量获取释放

如果您打包应用程序并在无法访问git的情况下部署它,则可以使用环境变量APPLICATION_GIT_COMMIT_HASH

git_commit_hash=os.environ.get("APPLICATION_GIT_COMMIT_HASH")

通过文件获得释放

最后,如果很难或不可能通过部署平台设置环境变量,则可以在打包的部署中包含包含提交哈希的新文件。您可以从该文件中读取并将该值提供给构造函数。

打包时,将提交哈希写入文件,然后将其包含在包中:

git rev-parse HEAD > path/to/git_commit_hash.txt

在运行时,按如下方式读取包含的文件:

release_file=open("git_commit_hash.txt","r")git_commit_hash=release_file.read().decode('utf8').strip('\n')

定义自己的版本

您还可以在构造函数中提供自己的版本字符串:

fromauklet.monitoringimportMonitoringauklet_monitoring=Monitoring(api_key="<API_KEY>",app_id="<APP_ID>",release="<CURRENT_COMMIT_HASH>",version="<DEFINED_VERSION>")

资源

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带有字符串的java JNA调用与带有字节[]的java JNA调用的行为不同   java基于键列表获取子映射   重启后永久增加java堆大小?   JavaHTTPS服务器:相互SSL身份验证   java为什么接受接口的方法会拒绝该接口的实现?   片段中的java视图无法应用于()   ms access Java SQL更新命令不工作   java将web服务自动打包和部署到Oracle Application Server 10g   java有没有办法在安卓 studio中为安卓时钟设置多个警报?   位于FTP服务器上的文件上的Java校验和md5   在Java中创建类时遇到问题。有些方法不太确定   java错误:在类chrome\u驱动程序中找不到主方法   通用海图(Javascript\Java)