EC - Sql - 计划报表发送电源详细报表方法

EC - Sql - 计划报表发送电源详细报表方法

1. 查询报表使用SQL
PGSQL
SELECT
    Resource.NAME AS "Computer Name",
    Resource.DOMAIN_NETBIOS_NAME AS "Domain Name",
    FORMAT(DATEADD(SECOND, PH.DATE / 1000, '19700101'), 'MMM dd, yyyy') AS "Date",
    FORMAT(DATEADD(MILLISECOND, PH.BOOTUP_TIME, '00:00:00'), 'HH:mm') AS "Startup Time",
    FORMAT(DATEADD(MILLISECOND, PH.SHUTDOWN_TIME, '00:00:00'), 'HH:mm') AS "Shutdown Time",
    FORMAT(DATEADD(MILLISECOND, PH.LAST_CONTACT_TIME, '00:00:00'), 'HH:mm') AS "Last Contact Time",
    FORMAT(DATEADD(MILLISECOND,CASE WHEN 0 >= PH.BOOTUP_TIME AND 86399999 <= PH.SHUTDOWN_TIME THEN 86399999 - 0 ELSE CASE
WHEN 0 >= PH.BOOTUP_TIME THEN PH.SHUTDOWN_TIME - 0
ELSE
CASE
WHEN 86399999 <= PH.SHUTDOWN_TIME THEN 86399999 - PH.BOOTUP_TIME
ELSE PH.SHUTDOWN_TIME - PH.BOOTUP_TIME
END
END
END, '00:00:00'), 'HH \h\o\u\r\s mm \m\i\n\s') AS "UpTime"
FROM
Resource
INNER JOIN ManagedComputer ON Resource.RESOURCE_ID = ManagedComputer.RESOURCE_ID
INNER JOIN ComputerPowerEvtHistory AS PH ON Resource.RESOURCE_ID = PH.RESOURCE_ID
WHERE
(0 <= PH.BOOTUP_TIME OR 0 <= PH.SHUTDOWN_TIME)
AND (PH.BOOTUP_TIME <= 86399999 OR PH.SHUTDOWN_TIME <= 86399999)
AND (EVENT_STATUS <> -1)
AND ManagedComputer.MANAGED_STATUS = 61
ORDER BY
Resource.NAME,
PH.DATE;
MSSQL
SELECT
    Resource.NAME AS "Computer Name",
    Resource.DOMAIN_NETBIOS_NAME AS "Domain Name",
    FORMAT(DATEADD(SECOND, PH.DATE / 1000, '19700101'), 'MMM dd, yyyy') AS "Date",
    FORMAT(DATEADD(MILLISECOND, PH.BOOTUP_TIME, '00:00:00'), 'HH:mm') AS "Startup Time",
    FORMAT(DATEADD(MILLISECOND, PH.SHUTDOWN_TIME, '00:00:00'), 'HH:mm') AS "Shutdown Time",
    FORMAT(DATEADD(MILLISECOND, PH.LAST_CONTACT_TIME, '00:00:00'), 'HH:mm') AS "Last Contact Time",
    FORMAT(DATEADD(MILLISECOND,
            CASE
                WHEN 0 >= PH.BOOTUP_TIME AND 86399999 <= PH.SHUTDOWN_TIME THEN 86399999 - 0
                ELSE
                    CASE
                        WHEN 0 >= PH.BOOTUP_TIME THEN PH.SHUTDOWN_TIME - 0
                        ELSE
                            CASE
                                WHEN 86399999 <= PH.SHUTDOWN_TIME THEN 86399999 - PH.BOOTUP_TIME
                                ELSE PH.SHUTDOWN_TIME - PH.BOOTUP_TIME
                            END
                    END
            END, '00:00:00'), 'HH \h\o\u\r\s mm \m\i\n\s') AS "UpTime"
FROM
    Resource
INNER JOIN ManagedComputer ON Resource.RESOURCE_ID = ManagedComputer.RESOURCE_ID
INNER JOIN ComputerPowerEvtHistory AS PH ON Resource.RESOURCE_ID = PH.RESOURCE_ID
WHERE
    (0 <= PH.BOOTUP_TIME OR 0 <= PH.SHUTDOWN_TIME)
    AND (PH.BOOTUP_TIME <= 86399999 OR PH.SHUTDOWN_TIME <= 86399999)
    AND (EVENT_STATUS <> -1)
    AND ManagedComputer.MANAGED_STATUS = 61
ORDER BY
    Resource.NAME,
    PH.DATE;

注意:sql长度过长报错,把多余空格去掉即可。

2. 计划报表发送该查询报表。

    • Related Articles

    • 【APM】添加计划报表页面选择业务组 子组无法显示报HTTP Status 400

      报错截图: 解决方法: 备份以下路径的Server.xml文件,再用附件Server.xml文件替换--重启apm--清除浏览器缓存 AppManager_Home\working\apache\tomcat\conf\backup AppManager_Home\working\apache\tomcat\conf
    • ELA-计划报表中的附件是否可直接设置成PDF格式(而非zip包)?

      如下图,在产品设置中可修改报表附件的格式: 如果邮件中包含1个以上的报表,还是统一的zip压缩包;单个报表可以设置成PDF或CSV格式。
    • 【APM】新建计划报表报错(如图)

      报错截图 解决方法: 先分别备份以下两路径下的 server.xml 文件,用附件新的server.xml替换 然后重启APM AppManager_Home\working\apache\tomcat\conf\backup AppManager_Home\working\apache\tomcat\conf
    • 登陆界面提示用户名密码无法关闭

      需要进行数据库操作: 1. 请在管理--报表--查询报表中,执行如下sql语句:    select * from globalconfig where category like '%login%'      2. 如果上述结果是 false 则连接数据库执行如下sql语句,连接数据库方法请参考链接:https://www.manageengine.com/products/service-desk/faq-general-modules.html#database2 update ...
    • Azure SQL数据库 - 常见问题

      1. 为什么我们在Azure SQL 数据库监视器中删除了诊断设置依赖项? APM v15240以下版本: Azure SQL数据库正在使用诊断设置来执行数据收集。 必须满足先决条件才能打开用于数据收集的诊断设置。 在编辑监视器页面中提供一个诊断存储帐户,从而方便数据收集。 从APM v15240开始: Azure SQL数据库监视器已得到增强,可以使用Azure API,并且已删除诊断设置依赖项。 数据收集没有任何附加条件。 无需提供编辑监视器页面中的诊断存储帐户详细信息以便数据收集。 ...