Notification

Icon
Error

Workstation: Last reported boot time - This is the BOOT time, not the uptime

Posted: Friday, August 18, 2017 1:19:25 AM(UTC)
jperry

jperry

Member Original PosterPosts: 15
0
Like
The uptime is great if your workstations are reliably checking in.
Code:
Convert(Decimal(7,2),tblAssets.Uptime / 60 / 60 / 24) As [Days up]


The issue is when you want to know WHEN was the last reported reboot.
Laptops may not have reported in for a couple weeks, yet still show an uptime of less than one day.

You can calculate the last boot time with the tblAssets.Uptime and blAssets.Lastseen
Code:
tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24)   As [Boot Time]


I tend to be fairly verbose in my reports.
Code:
Select Top 1000000 tblAssets.AssetID,
  tblAssets.AssetName,
  tsysAssetTypes.AssetTypeIcon10 As icon,
  Convert(Decimal(7,2),tblAssets.Uptime / 60 / 60 / 24) As [Days up],
  tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24)   As [Boot Time],
  tblAssetCustom.Location,
  tblAssets.Lastseen,
  Left(tblADComputers.OU, CharIndex(',', tblADComputers.OU) - 1) As OU,
  '<img src="thumbnail.aspx?user=' + tblADusers.Username + '&domain=' +
  tblADusers.Userdomain + '&size=12" class="rimage"/>' As Picture,
  tblADusers.Displayname,
  tblADusers.Username,
  tblADusers.Userdomain,
  tblAssetCustom.Model,
  tblOperatingsystem.Version As [OS Version],
  tblOperatingsystem.Caption As [OS Name],
  tsysIPLocations.IPLocation,
  tblAssets.Description As [LS Description],
  tblADComputers.Description As [AD Description]
From tblAssets
  Left Outer Join tblComputersystem On tblAssets.AssetID =
    tblComputersystem.AssetID
  Left Outer Join tblADusers On tblAssets.Username = tblADusers.Username
  Left Outer Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
  Left Outer Join tsysAssetTypes On tsysAssetTypes.AssetType =
    tblAssets.Assettype
  Left Outer Join tblADComputers On tblAssets.AssetID = tblADComputers.AssetID
  Left Outer Join tblOperatingsystem On tblAssets.AssetID =
    tblOperatingsystem.AssetID
  Left Outer Join tsysIPLocations On tsysIPLocations.LocationID =
    tblAssets.LocationID
Where tblComputersystem.Domainrole < 2 And tblAssetCustom.State = 1 And
  tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24) < Getdate() - 14
Order By tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24) Asc, tblAssets.Uptime Desc,
  tblAssets.AssetName
William382
#1William382 Member Posts: 11  
posted: 1/15/2019 10:54:19 PM(UTC)
Originally Posted by: jperry Go to Quoted Post
The uptime is great if your workstations are reliably checking in.
Code:
Convert(Decimal(7,2),tblAssets.Uptime / 60 / 60 / 24) As [Days up]


The issue is when you want to know WHEN was the last reported reboot.
Laptops may not have reported in for a couple weeks, yet still show an uptime of less than one day.

You can calculate the last boot time with the tblAssets.Uptime and blAssets.Lastseen
Code:
tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24)   As [Boot Time]


I tend to be fairly verbose in my reports.
Code:
Select Top 1000000 tblAssets.AssetID,
  tblAssets.AssetName,
  tsysAssetTypes.AssetTypeIcon10 As icon,
  Convert(Decimal(7,2),tblAssets.Uptime / 60 / 60 / 24) As [Days up],
  tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24)   As [Boot Time],
  tblAssetCustom.Location,
  tblAssets.Lastseen,
  Left(tblADComputers.OU, CharIndex(',', tblADComputers.OU) - 1) As OU,
  '<img src="thumbnail.aspx?user=' + tblADusers.Username + '&domain=' +
  tblADusers.Userdomain + '&size=12" class="rimage"/>' As Picture,
  tblADusers.Displayname,
  tblADusers.Username,
  tblADusers.Userdomain,
  tblAssetCustom.Model,
  tblOperatingsystem.Version As [OS Version],
  tblOperatingsystem.Caption As [OS Name],
  tsysIPLocations.IPLocation,
  tblAssets.Description As [LS Description],
  tblADComputers.Description As [AD Description]
From tblAssets
  Left Outer Join tblComputersystem On tblAssets.AssetID =
    tblComputersystem.AssetID
  Left Outer Join tblADusers On tblAssets.Username = tblADusers.Username
  Left Outer Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
  Left Outer Join tsysAssetTypes On tsysAssetTypes.AssetType =
    tblAssets.Assettype
  Left Outer Join tblADComputers On tblAssets.AssetID = tblADComputers.AssetID
  Left Outer Join tblOperatingsystem On tblAssets.AssetID =
    tblOperatingsystem.AssetID
  Left Outer Join tsysIPLocations On tsysIPLocations.LocationID =
    tblAssets.LocationID
Where tblComputersystem.Domainrole < 2 And tblAssetCustom.State = 1 And
  tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24) < Getdate() - 14
Order By tblAssets.Lastseen - Convert(Decimal,tblAssets.Uptime / 60 / 60 / 24) Asc, tblAssets.Uptime Desc,
  tblAssets.AssetName


This now generates an error: There was an error parsing the query. [ Token line number = 1,Token line offset = 315,Token in error = Left ]
jsfCyber
#2jsfCyber Member Posts: 1  
posted: 5/17/2019 7:44:52 AM(UTC)
Hi
This is just what I'm looking for, finding uptime since either restart or power on.
But i get the same error as William382.
Any solution or maybe other report i can use?

Active Discussions

Action Powershell script for WOL on VLAN
by  psmail   Go to last post Go to first unread
Last post: 5/30/2019 12:00:43 AM(UTC)
Lansweeper Fonts
by  TKinnie  
Go to last post Go to first unread
Last post: 5/23/2019 4:00:40 PM(UTC)
Action Schedule Reboot using AT and psshutdown with time input
by  spatchE   Go to last post Go to first unread
Last post: 5/21/2019 5:35:46 PM(UTC)
Action Open users local Temp directory
by  studerje  
Go to last post Go to first unread
Last post: 5/14/2019 7:24:24 PM(UTC)
Lansweeper CMD- CFI MS Update remover 2
by  Rodney Stowell  
Go to last post Go to first unread
Last post: 4/18/2019 6:55:01 PM(UTC)
Action Skype User
by  cctech   Go to last post Go to first unread
Last post: 4/18/2019 4:14:54 PM(UTC)
Action Email user
by  cctech  
Go to last post Go to first unread
Last post: 4/18/2019 3:48:50 PM(UTC)