aws cloudwatch客户端库方便高效地发送度量

awsme的Python项目详细描述


亚马逊网络服务云监控指标库

https://img.shields.io/pypi/v/awsme.svghttps://img.shields.io/travis/peterdemin/awsme.svgUpdates

可配置的客户端库,支持异步和缓冲发送 AWS云监控指标。

安装

默认情况下,安装awsme时不需要boto3依赖项以使其部署 在aws lambda环境中更快(有关详细信息,请参见https://github.com/peterdemin/awsme/issues/3>;)。

如果在lambda之外运行awsme,请使用以下命令激活boto3依赖项:

pip install awsme[boto3]

使用量

fromawsmeimportcreate_cloud_watchcloud_watch=create_cloud_watch(namespace='Application',dimensions={'version':'1.0.0'},)cloud_watch.log('metric',dimensions={'key':'dim'},value=123)

创建选项

create_cloud_watch接受以下参数:

  • 异步(可选bool):如果为true(默认),则从单独的线程发送度量。
  • buffered(可选bool):如果为true(默认值),度量将在缓冲区中累积并成批发送。
  • dummy(可选bool):如果为true,则忽略前面两个选项并创建dummy recorder。默认为False。
  • dimensions:(可选dict[str,str]):将附加到所有度量的默认维度字典。
  • 所有其他Kwargs将被绕过到boto3.client('cloudwatch', **kwargs)

日志选项

create_cloud_watch返回的cloudwatch有两个公共方法。主要方法是log。 它的参数:

  • name(必选str):度量的名称。
  • 尺寸(可选dict[str,str]):附加尺寸, 将从工厂添加到默认尺寸。
  • 值(可选浮点):度量值,默认为1。
  • 单位(可选str):公制单位,例如count、seconds、bytes, 有关有效值的完整列表,请参见AWS docs
  • 存储分辨率(可选int):以秒为单位度量存储分辨率,默认为60。

冲洗

如果使用buffered=True(默认值)调用create_cloud_watch,则可能需要强制 刷新内部度量缓冲区。 在标准应用程序中,这可能不是必需的,因为缓冲区将自动刷新atexit。 但是,如果应用程序作为aws lambda函数运行,则lambda函数的执行 当功能完成时,将“冻结”,防止退出,从而冲洗。在这个用例中, 您需要通过调用flush强制刷新缓冲区。 这是论点:

  • complete(可选bool):如果为true(默认),则执行完全刷新。

AWS配置

awsme使用boto3库,它从environment variables获取配置 和配置文件。 要检查是否已正确配置发送度量值的所有内容,请使用附带的命令行工具:

$ awsme-test
...
Successfully sent metric "awsme-test" to "Test Namespace"

学分

这个包是用Cookiecutterelgertam/cookiecutter-pipenv项目模板创建的,基于audreyr/cookiecutter-pypackage

历史记录

0.2.2(2019-01-24)

  • 添加了异步记录器和用户文档

0.1.0(2018-11-13)

  • pypi上的第一个版本。

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

推荐PyPI第三方库


热门话题
java如何在Android Wifi中筛选相同的SSID?   Java中重写接口中异常处理的泛型   java“无效转义序列(有效的是\b\t\n\f\r\”\“\”\)”语法错误   使用JNDI的java NameReadyBoundException   java如何在这个程序上执行算法   java为什么我的应用程序在调试时崩溃而应用程序停止?   Java:while循环未检测到中断条件,但如果块检测到   java如何快速使用jfreechart创建的折线图   java将输入放入JSTL会话变量,以便稍后在屏幕上显示   java在spring boot中加载外部JAR   java Apache NiFi无法使用ojdbc6连接到Oracle 12c。jar或ojdbc8。罐子   java解释StringToWordVector()Weka的输出   java charAt()找不到符号   使用mpjexpress的java阅读控制台输入