如何在splunk Enterprise中使用boto3

How to use boto3 in splunk Enterprise

我正在尝试为我在 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)

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

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