首页 > 解决方案 > 如何在 splunk Enterprise 中使用 boto3

问题描述

我正在尝试在 splunk 中为我的用例创建一个自定义应用程序。我的一个用例是从 AWS 获取一些数据,我已经有一个用 python 编写的工作代码,并且我正在使用 boto3 SDK。我在 Splunk 中尝试的相同代码但它不起作用,因为 Splunk 没有 boto3 的信息。请有任何建议。

示例代码在这里。

import boto3
import json

def ec2_client():
    client = boto3.client('ec2')
    """ :type : pyboto3.ec2 """
    return client;

def perform_ec2_operation():
    ec2_interested_details = ec2_client().describe_instances()
    #print(ec2_interested_details)
    return ec2_interested_details;

if __name__ == '__main__':
    data = perform_ec2_operation()
    data = data['Reservations'][0]['Instances'][0]['NetworkInterfaces'][0]['Association']
    data = json.dumps(data);
    print(data)

标签: amazon-web-servicesboto3splunk

解决方案


您的脚本失败的原因是 Splunk 使用自己的 Python 部署。您需要将 boto3 安装到该 Python 的库中,这可能具有挑战性。请参阅以下内容:

您是否正在创建自定义输入以从 AWS 检索数据?如果是这样,我建议您改为查看 Splunk 为 AWS 创建的附加组件,https://splunkbase.splunk.com/app/1876/这将已经为您配置了所有必要的库。


推荐阅读