Green IT Installation Instructions

Minimum Version

This DEX Pack requires SysTrack version 9.0 or higher.

Notes

  • After this DEX Pack is installed, it may take up to 24 hours for data to appear.

  • If you update or reinstall this DEX Pack, you must reassign any Views created below to the SF_GreenIT Role.

Import Kit

To use this DEX Pack, the corresponding Kit must be imported to SysTrack.

If you have already imported the DEX Pack directly from the Kits page, the Import Kit step is complete. You may move on to the next step.

If you are viewing this DEX Pack in the Customer Gateway, follow these steps to import this DEX Pack Kit:

  1. On the DEX Pack page, download the DEX Pack ZIP file

  2. In SysTrack, open Kits

  3. Under Local, click Select Kit File

  4. Select the DEX Pack ZIP File

VM Energy Consumption View

The Virtual Machine Energy Consumption Dashboard requires you to make a View for the SF_GreenIT Role. This View tracks the amount of time a system is powered on or actively being used, as well as the CPU and GPU utilization. This View only returns data from virtual machines (VMs).

To create the new View:

  1. Navigate to Configure > Views

  2. Click the padlock icon in the upper-right to enable editing

  3. Click the plus icon to add a new View

  4. Fill in the Settings as follows:

    1. View Name: SF_GreenITVMCGPU

    2. Existing Category: Virtualization

    3. Description: A view to return CPU and GPU daily usage

    4. Expires in: 30 Days

    5. When Expired: Append Data

    6. Do NOT check “When overdue by 1 day(s)”

    7. Set the Refresh drop-downs to Weekly, Inside, 24x7, and “Every 1 week(s)

    8. Copy this SQL query, and paste it into the box under SQL Selection > Generic

    9. Click Test SQL. A Test Success message should appear. If the test is not successful, the query may have been copied incorrectly

  5. Click Create View at the top-right

To assign the new View:

  1. Navigate to Configure > Roles

  2. Use the drop-down at the top to select the SF_GreenIT Role

  3. Click Views, then check the box next to SF_GreenITVMCGPU

  4. Click Save Changes at the top-right

After completing this process, it may take up to 8 days for the corresponding data to appear in the Virtual Machine Energy Consumption Dashboard.

Copy SF_GreenITVMCGPU

Copy
select 
  wguid, 
  getutcdate() as [VWTIME], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [DOTY] ELSE NULL END
  ) AS [Sunday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Sunday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Sunday_Active_CPU], 
  0.00 AS [Sunday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Sunday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Sunday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 1 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Sunday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [DOTY] ELSE NULL END
  ) AS [Monday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Monday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Monday_Active_CPU], 
  0.00 AS [Monday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Monday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Monday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 2 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Monday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [DOTY] ELSE NULL END
  ) AS [Tuesday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Tuesday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Tuesday_Active_CPU], 
  0.00 AS [Tuesday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Tuesday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Tuesday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 3 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Tuesday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [DOTY] ELSE NULL END
  ) AS [Wednesday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Wednesday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Wednesday_Active_CPU], 
  0.00 AS [Wednesday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Wednesday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Wednesday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 4 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Wednesday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [DOTY] ELSE NULL END
  ) AS [Thursday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Thursday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Thursday_Active_CPU], 
  0.00 AS [Thursday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Thursday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Thursday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 5 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Thursday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [DOTY] ELSE NULL END
  ) AS [Friday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Friday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Friday_Active_CPU], 
  0.00 AS [Friday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Friday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Friday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 6 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Friday_Active], 
  MAX(
    CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [DOTY] ELSE NULL END
  ) AS [Saturday], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [CPU] ELSE NULL END
    ), 
    0
  ) AS [Saturday_CPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [Active_CPU] ELSE NULL END
    ), 
    0
  ) AS [Saturday_Active_CPU], 
  0.00 AS [Saturday_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [Active_GPU] ELSE NULL END
    ), 
    0
  ) AS [Saturday_Active_GPU], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [OnlineCnt] ELSE NULL END
    ), 
    0
  ) AS [Saturday_Online], 
  ISNULL(
    MAX(
      CASE WHEN DATEPART(w, [DOTY]) = 7 THEN [ActiveCnt] ELSE NULL END
    ), 
    0
  ) AS [Saturday_Active] 
from 
  (
    select 
      wguid, 
      [DOTY], 
      AVG(
        CASE WHEN wusage <> 3 THEN [CPU] ELSE NULL END
      )* 100 as [CPU], 
      AVG(
        CASE WHEN wusage = 3 THEN [CPU] ELSE NULL END
      )* 100 as [Active_CPU], 
      ISNULL(
        AVG([GPU])* 100, 
        0
      ) as [Active_GPU], 
      count(*) as [OnlineCnt], 
      count(
        CASE WHEN wusage = 3 THEN 1 ELSE NULL END
      ) as [ActiveCnt] 
    from 
      (
        select 
          i1.wguid, 
          i1.[DOTY], 
          i1.int_cpu + i1.dpc_cpu + i1.priv_cpu + i1.user_cpu as [CPU], 
          i1.wusage, 
          i3.[GPU] 
        from 
          (
            (
              (
                select 
                  wguid, 
                  DATEADD(
                    D, 
                    DATEDIFF(D, 0, wtime), 
                    0
                  ) as [DOTY], 
                  wusage, 
                  int_cpu, 
                  dpc_cpu, 
                  priv_cpu, 
                  user_cpu 
                from 
                  sasys 
                where 
                  wtype = 1
              ) i1 
              inner join (
                select 
                  wguid 
                from 
                  sascfg 
                where 
                  vmware > 0
              ) i2 on i1.wguid = i2.wguid
            ) 
            left join (
              select 
                wguid, 
                AVG(usage_gpu) as [GPU], 
                DATEADD(
                  D, 
                  DATEDIFF(D, 0, wtime), 
                  0
                ) as [DOTY] 
              from 
                sagpu 
              where 
                wtype = 1 
                and DATEDIFF(
                  D, 
                  DATEADD(
                    D, 
                    DATEDIFF(D, 0, wtime), 
                    0
                  ), 
                  DATEADD(
                    D, 
                    DATEDIFF(
                      D, 
                      0, 
                      GETUTCDATE()
                    ), 
                    0
                  )
                ) < 8 
                and DATEDIFF(
                  D, 
                  DATEADD(
                    D, 
                    DATEDIFF(D, 0, wtime), 
                    0
                  ), 
                  DATEADD(
                    D, 
                    DATEDIFF(
                      D, 
                      0, 
                      GETUTCDATE()
                    ), 
                    0
                  )
                ) > 0 
              group by 
                wguid, 
                DATEADD(
                  D, 
                  DATEDIFF(D, 0, wtime), 
                  0
                )
            ) i3 on (
              i1.wguid = i3.wguid 
              and i1.[DOTY] = i3.DOTY
            )
          ) 
        where 
          DATEDIFF(
            D, 
            i1.[DOTY], 
            DATEADD(
              D, 
              DATEDIFF(
                D, 
                0, 
                GETUTCDATE()
              ), 
              0
            )
          ) < 8 
          and DATEDIFF(
            D, 
            i1.[DOTY], 
            DATEADD(
              D, 
              DATEDIFF(
                D, 
                0, 
                GETUTCDATE()
              ), 
              0
            )
          ) > 0
      ) t1 
    group by 
      [DOTY], 
      wguid
  ) t2 
group by 
  wguid

Green IT Role

This DEX Pack requires you to assign the SF_GreenIT Role to the relevant Configurations:

  1. Navigate to Configure > Configurations

  2. Click the padlock icon in the upper-right to enable editing

  3. Use the drop-down at the top to select a relevant Configuration, or create a new Configuration

  4. Assign the SF_GreenIT Role to the Configuration by dragging it from Available Roles to Assigned Roles

  5. Click Save Changes at the top-right

  6. Repeat this process for any other relevant Configurations

After completing this process, it may take up to two days for the corresponding data to appear.

Specifically, this Role is most relevant to the data in the Printing Dashboard.

Location Data

If location data is not enabled for monitored systems, this DEX Pack will have reduced functionality and accuracy. Location data is enabled by default.

In the cloud version, location data can only be disabled by importing a Role from the on-prem version. Thus, if your enterprise does not use the on-prem version, then location data is most likely enabled. If your enterprise uses the on-prem version, follow the steps below to verify if location data is enabled.

To verify if location data is enabled in Deploy (On-Prem Version):

  1. Navigate to Deploy > Edit the config

  2. Check the box next to Enable Advanced Settings

  3. Navigate to Policies and Settings > Inventory Management

  4. Set “Egress Get IP Address” to True

To verify if location data is enabled in Configure (On-Prem Version):

  1. Navigate to Configure > Roles or Configurations

  2. Click the padlock icon in the upper-right to enable editing

  3. Use the drop-down at the top to select a relevant Role or Configuration

  4. Navigate to Policies > Inventory Management

  5. Check the box next to Egress Get IP Address

  6. Click Save Changes at the top-right

  7. Repeat this process for any other relevant Roles or Configurations

Printing Event Log

The Printing Dashboard requires the Windows PrintService event log (Microsoft-WindowsPrintService/Operational) to be enabled for monitored systems. This log is disabled by default. You can use tools such as PowerShell or Group Policy to enable this log for multiple systems.