Advertisement
Guest User

Untitled

a guest
May 3rd, 2023
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $AgentJobs = Get-VBRComputerBackupJob
  2.  
  3. foreach ($Job in $AgentJobs) {
  4. $Job.Name
  5.  
  6. # --------------  GET AGENT JOB LAST SESSION  ---------------------------
  7.  
  8. # CREATE A VARIABLE IDENTIFYING IF THE JOB IS A POLICY OR NOT
  9. $IsPolicy = $False
  10. if ($Job.Mode -eq 'ManagedByAgent') { $IsPolicy = $True }
  11. "is it policy: $IsPolicy"
  12. # NOT ALL POLICY SESSIONS ARE BACKUPS, LOT OF CONFIG UPDATES THERE
  13. # TO FILTER IT TO JUST ACTUAL BACKUPS THE NAME HAS WILDCARDS ADDED
  14. # https://forums.veeam.com/post434804.html
  15. $JobNameForQuery = $Job.Name
  16. if ($IsPolicy) { $JobNameForQuery = '{0}?*' -f $Job.Name }
  17. $Sessions = Get-VBRComputerBackupJobSession -Name $JobNameForQuery
  18. $LastSession = $Sessions[0]
  19. $LastSessionTasks = Get-VBRTaskSession -Session $LastSession
  20.  
  21. # --------------  GET AGENT JOB ID, NAME, TYPE  ---------------------
  22.  
  23. $JOB_ID = $Job.Id
  24. $JOB_NAME = $Job.Name
  25.  
  26. if ($IsPolicy) {
  27.     $JOB_TYPE = 'EpAgentPolicy'
  28. } else {
  29.     $JOB_TYPE = 'EpAgentBackup'
  30. }
  31.  
  32. $DATA_SIZE = 0
  33. $DATA_SIZE
  34. foreach ($Task in $LastSessionTasks) {
  35.     $Task.info.ObjectName
  36.     $DATA_SIZE += $Task.Progress.TotalUsedSize
  37. }
  38. $DATA_SIZE
  39. $Job.BackupType
  40. #$LastSession.CreationTime.Date
  41.  
  42. $DATA_SIZE = 0
  43. foreach ($Task in $LastSessionTasks) {
  44.     $DATA_SIZE += $Task.Progress.TotalUsedSize
  45. }
  46.  
  47. $DATA_SIZE = 0
  48. foreach ($Task in $LastSessionTasks) {
  49.     $DATA_SIZE += $Task.Progress.TotalUsedSize
  50. }
  51.  
  52. if ($Job.BackupType -eq 'SelectedFiles') {
  53.     $AgentBackup = Get-VBRBackup -Name $Job.Name
  54.     $RestorePoints = Get-VBRRestorePoint -Backup $AgentBackup | `
  55.                      Sort-Object -Property CreationTimeUtc -Descending
  56.     $RestorePointsOnlyFull = $RestorePoints | ? {$_.IsFull}
  57.     if ($RestorePointsOnlyFull.count -gt 0) {
  58.         $RestorePointsOnlyFull[0].CreationTime.DateTime
  59.         $Storage = $RestorePointsOnlyFull[0].FindStorage()
  60.         $VbkSize = $Storage.Stats.BackupSize
  61.         $dedup = ($Storage.Stats.DedupRatio) / 100
  62.         $compres = ($Storage.Stats.CompressRatio) / 100
  63.         if ($dedup -eq 0) { $dedup = 1}
  64.         if ($compres -eq 0) { $compres = 1}
  65.         $DATA_SIZE = [int64]($VbkSize / $dedup / $compres)
  66.     }
  67.  
  68. }
  69. $DATA_SIZE
  70.  
  71. "------------------"
  72. }
  73.  
  74.  
  75.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement