扫描OMSA的omreport工具的输出以查找问题

omsa-alert的Python项目详细描述


概述

Dell OMSA(openmanage server administrator)命令行工具是一套无状态工具,用于查询或重新配置Dell服务器硬件,包括PERC控制器、虚拟磁盘和物理磁盘。这个工具能够使用“OMeNoCDvDead”和“OpRealpDPCE”输出,检查是否存在问题(物理磁盘或虚拟磁盘上的“不OK状态”),如果发现任何问题,就采取行动。

它可以发送一个或多个电子邮件或调用一个或多个命令。您还可以选择将有关问题设备的信息转发到一个或多个命令。

可以提交带有任何可能增加有用性的缺失特性的请求。

安装

使用pypi:

$ pip install omsa-alert

示例

如果有错误:

$ omreport storage pdisk controller=1 -fmt ssv | oa_check pdisk -e root@localhost -e dustin@localhost
Notifying: ['root@localhost', 'dustin@localhost']

此类电子邮件的示例:

Return-Path: <omsaalert@localhost>
X-Original-To: root@localhost
Delivered-To: root@localhost
Received: from mlll2664.magicleap.ds (mlll2664.magicleap.ds [IPv6:::1])
    by mlll2664.magicleap.ds (Postfix) with ESMTP id CC8E71720D2C
    for <root@localhost>; Fri, 26 Jan 2018 05:40:48 -0500 (EST)
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: OMSA Reported a Problem
From: omsaalert@localhost
To: root@localhost, dustin@localhost
Message-Id: <20180126104048.CC8E71720D2C@mlll2664.magicleap.ds>
Date: Fri, 26 Jan 2018 05:40:48 -0500 (EST)

[
    {
        "Available RAID Disk Space": "0.00 GB (0 bytes)",
        "Bus Protocol": "SAS",
        "Capable Speed": "Not Available",
        "Capacity": "1,862.50 GB (1999844147200 bytes)",
        "Certified": "Not Applicable",
        "Device Write Cache": "Not Applicable",
        "Disk Cache Policy": "Not Applicable",
        "Driver Version": "Not Applicable",
        "Encrypted": "Not Applicable",
        "Encryption Capable": "No",
        "Failure Predicted": "No",
        "Form Factor ": "Not Available",
        "Hot Spare": "No",
        "ID": "0:0:2",
        "ISE Capable": "No",
        "Manufacture Day": "Not Available",
        "Manufacture Week": "Not Available",
        "Manufacture Year": "Not Available",
        "Media": "HDD",
        "Mirror Set ID": "Not Applicable",
        "Model Number": "Not Applicable",
        "Name": "Physical Disk 0:0:2",
        "Negotiated Speed": "Not Available",
        "Non-RAID HDD Disk Cache Policy": "Not Applicable",
        "PCIe Maximum Link Width": "Not Applicable",
        "PCIe Negotiated Link Width": "Not Applicable",
        "Part Number": "Not Available",
        "Part of Cache Pool": "Not Applicable",
        "Power Status": "Not Applicable",
        "Product ID": "WD2001FYYG-01SL3",
        "Progress": "Not Applicable",
        "Remaining Rated Write Endurance": "Not Applicable",
        "Revision": "VR02",
        "SAS Address": "50014EE5AAACA923",
        "Sector Size": "512B",
        "Serial No.": "60012383",
        "State": "Online",
        "Status": "NOT-OK",
        "Sub Vendor": "Not Available",
        "T10 PI Capable": "No",
        "Used RAID Disk Space": "1,862.50 GB (1999844147200 bytes)",
        "Vendor ID": "WD"
    }
]

注:这是一个人为的例子。磁盘信息基于完全正常的磁盘。真正的失败看起来会不同。

有关参数的完整文档,请参见命令行帮助。

功能

  • 可能会向许多电子邮件收件人发送邮件。
  • 可以调用许多单独的命令,并可以选择通过stdin传递有问题设备的信息。
  • 启用“详细”可将问题信息打印到屏幕上(对crontab很有用)。
  • 如果遇到问题(默认情况下),则返回代码(5)将失败,除非您告诉它不要这样做。

测试

有一套完整的测试套件:

$ ./test.sh

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

推荐PyPI第三方库


热门话题
Android Java在活动之间传递值   java当实体中存在关系时,我可以只使用实体的id而不是从DB中获取实体吗?   bouncycastle Java运行SSHD服务器错误未找到类定义   java SWT/Swing>Threads n'Hell   java多线程数据库读取   java如何在Eclipse中轻松提交Git   java在哪里可以找到字符串相等比较的一组特定排序规则?   无连接表的java单向单域关系   java扩展三角文件   java spring。杰克逊。序列化。failonemptybeans   java无法加载请求的类:oracle。jdbc。驾驶员OracleDriver   java通过数组进行索引循环并打印出元素?   找不到eclipse错误类中的java提交Hadoop作业   Java:随机设定种子   java片段、异步任务和侦听器   java在分号后使用{}