一个collected输出插件,用于向sumo逻辑发送carbon 2.0格式的度量。

sumologic-collectd-metrics的Python项目详细描述


开始

<H3>1。python版本

sumo logic collected plugin是在collected python plugin上构建的。运行插件所需的最低版本是Python2.6。您可以从python下载页面下载并安装所需的python版本。

<H3>2。在您的计算机上安装collectd

如果collectd已安装,则可以跳过此步骤。否则,请按照 collectd download 站点中的说明进行下载和安装。有关其他详细信息,请参见collected wiki中的 第一步 部分。

Mac操作系统
brew install collectd

debian/ubuntu

sudo apt-get install collectd
<H3>3。下载并安装相扑逻辑集合插件

选项1:作为库安装

sudo pip install sumologic_collectd_metrics

所有必需的依赖项都将随库安装一起自动安装。

选项2:使用源代码安装

sumo logic collected插件源代码可以保存在系统的任何目录中。从 pythonidex>;包索引>;sumologic_collected_metrics 或:

git clone https://github.com/SumoLogic/sumologic-collectd-plugin.git

sumo logic collected插件使用 请求和 库来处理https请求。如果没有安装。使用pip安装它们:

sudo pip install requests
sudo pip install retry

<H3>4。在sumo逻辑中创建http度量源

如果您当前没有相扑逻辑帐户,请创建一个相扑逻辑帐户。

按照这些说明在sumo逻辑中设置http源。创建http源后,请确保获取url端点。

<H3>5。配置相扑逻辑集合插件

sumo logic collectd插件支持以下参数。要配置插件,请修改collectD名为collectD.conf的配置文件(例如 /etc/collectD/collectD.conf )。

所需参数

以下参数是必需的,必须在模块配置中指定。

<表> < COLGROUP > < COL/> < COL/> < COL/> < COL/> <正文> 姓名 说明 键入 必需的
url 要将度量值发送到的URL。当 在相扑逻辑网络应用程序上创建http源 。 字符串 正确 SDB类 收集原始数据的数据集规范。有关types.db的更多信息,请参阅collectd types.db 。collectd附带一个默认types.db文件,该文件位于collectd root目录下,例如 /usr/share/collectd/types.db 字符串格式为 "types1.db" "types2.db" … 正确 < > <表>

基本参数

以下参数不是严格要求的。建议设置这些参数,因为这些参数对于对指标进行分类和按指标进行搜索非常有用。

<表> < COLGROUP > < COL/> < COL/> < COL/> < COL/> <正文> 姓名 说明 键入 必需的 源名称 度量源的名称。 \u sourcename 可用于从该源搜索度量。它将覆盖相扑逻辑源配置中配置的默认值。 字符串 错误 源主机 度量主机的名称。 \u sourcehost 可用于从该主机搜索度量。它将覆盖相扑逻辑源配置中配置的默认值。 字符串 错误 源类别 收集的度量的类别。 \u sourcecategory 可用于从该类别中搜索度量。它将覆盖相扑逻辑源配置中配置的默认值。 字符串 错误 尺寸 有助于标识度量的键值对。收集的数据具有内在维度,键为 主机 插件 插件实例 类型 类型实例 DS名称 DS类型 。此处指定的其他维度有助于分离从该集合实例收集的度量,而从其他集合实例收集的metircs则有助于分离这些度量。维度不能包含保留符号和保留关键字 格式为 "key1"="val1", "key2"="val2" .. 错误 元数据 不用于标识度量的键值对。元数据主要用于帮助搜索度量。收集的数据可能具有内部元数据。此处指定的其他元数据可用于丰富现有元数据集。元数据不能包含保留符号和保留关键字 格式为 "key1"="val1", "key2"="val2" .. 错误 < > <表>

附加参数

有关其他配置参数,请参见下面的高级参数。

示例配置

插件的示例配置如下所示(代码将添加到 collectd root/etc 下的 collectd.conf ):

LoadPlugin python
<Plugin python>
    # Uncomment and update the following line if sumologic collectd plugin installed with source code
    # ModulePath "/path/to/sumologic-collectd-plugin"
    LogTraces true
    Interactive false
    Import "sumologic_collectd_metrics"

    <Module "sumologic_collectd_metrics">
        TypesDB "/path/to/your/collectd/share/collectd/types.db", "/path/to/my_own_types.db"  # At lease one types.db file must be specified
        URL "https://<deployment>.sumologic.com/receiver/v1/http/<source_token>"  # URL must be specified
        # Uncomment and update the following lines to override the default metadata configured in the the Sumo Logic Source configuration
        # SourceName "my_source"
        # SourceHost "my_host"
        # SourceCategory "my_category"
        # Uncomment and update the following lines to add additional key=value pairs
        # Dimensions "my_dim_key1"="my_dim_val1", "my_dim_key2"="my_dim_val2"
        # Metadata "my_meta_key1"="my_meta_val1", "my_meta_key2"="my_meta_val2"
    </Module>
</Plugin>

其他推荐模块

建议在collectd.conf中设置以下两个插件。这两个插件的功能在collectd wiki中进行了说明:plugin:logfile和plugin:csv:

LoadPlugin logfile
<Plugin logfile>
        LogLevel "info"
        File "/var/log/collectd.log"
        Timestamp true
        PrintSeverity true
</Plugin>

LoadPlugin csv
<Plugin csv>
        DataDir "/usr/local/var/lib/collectd/csv"
</Plugin>

如果在Collectd中启用了以下脉冲。conf ,允许收集cpu, 内存 磁盘 磁盘ollectd.org/wiki/index.php/plugin:interface" rel="nofollow">网络 系统指标:

LoadPlugin cpu
LoadPlugin memory
LoadPlugin disk
LoadPlugin interface

collectd wiki中提供了所有collected插件的列表

保留符号

等号和空格是保留符号:

"=", " "

保留关键字

以下术语仅供Sumo Logic内部使用:

brew install collectd
0
<H3>6。开始发送指标

通过运行collectd开始发送度量,例如(命令将根据collectd的安装而不同):

brew install collectd
1

查看日志

如果安装了日志文件,则可以通过跟踪collectd.log文件来查看日志,例如(命令可以不同,具体取决于collectd安装):

brew install collectd
2

数据模型

sumo logic collectd插件将使用碳2.0格式发送度量,定义为:

brew install collectd
3

维度 元数据 是由两个空格分隔的字符串的键/值对。 维度 唯一标识度量,而元数据对标识度量没有帮助。相反,它们用于对搜索指标进行分类。 是一个双数。 时间戳 是一个10位的unix epoch时间戳

压缩前的示例数据:

brew install collectd
4

命名模式

collectd使用非常强大的命名模式来标识每个统计值。它已经被证明是非常通用和灵活的,但一开始可能会让人困惑,特别是对新用户来说。您可以通过以下wiki了解更多信息:collectd naming schema

压缩

在发送度量之前,对其进行批处理和压缩。压缩算法是 "deflate" 。有关该算法的详细说明,请参阅deflate算法的说明。或者,可以为gzip压缩指定 "gzip" ,为不压缩指定 "none"

错误处理

默认情况下,sumo logic collected插件在异常时重试。当所有重试都失败时,请求将被安排为以后的尝试,或者根据缓冲区状态被丢弃。默认情况下,会缓冲1000个请求。如果缓冲区已满,则将删除所有重试后失败的请求。否则,它将被放回处理队列以进行下一次运行。

<H3>7。查看指标

要查看collectd插件发送的度量,请登录sumo logic并打开一个metrics选项卡。使用维度或元数据查询度量,例如:

brew install collectd
5

您应该能够看到主图表中显示的指标。

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

推荐PyPI第三方库


热门话题
java Github操作在生成期间未识别机密值   java根据给定的索引号选择适当的字符。开关语句   java如何在我的项目中使用SCA mvn插件在Fortify SCA扫描中仅包含一个文件夹?   java SwingWorker无法完成   使用KeyBindings Java在按住键时摆动停止暂停   java如何从sqlite数据库获取数据   java如何使用windows批处理文件逐个启动spring引导jar文件?   在Java中,字典是在构造函数中初始化映射的更好方法   用于在Java中创建2D形状的swing高级API   JavaSwing:制作一个可滚动的JPanel列表   引用泛型类中枚举成员的c#语法   java Doc4j:由于元素类型不同,比较两个文档失败   java如何优化绘制这些标记?