Greetings,
I have a client that wants to know the total free space or the total space usage in a specific tape media pool. I tried to find this through the standard Veeam ONE reports, but as far as I was able to see the only one that kinda does this is the "Backups on Tape" report, but it shows the free space in every tape drive. I would prefer to see the total free space or the total space usage of the media pool.
Is there any other ways to see this? Idk, like through some scripts or configuring some kind of alerts in Veeam ONE or even Veeam B&R.
-
- Lurker
- Posts: 1
- Liked: never
- Joined: Jul 11, 2022 2:58 pm
- Full Name: César Monges
- Contact:
-
- Veeam Software
- Posts: 1493
- Liked: 655 times
- Joined: Jul 17, 2015 6:54 pm
- Full Name: Jorge de la Cruz
- Contact:
Re: Alerts/Reports for Tape Usage
Hello Cesar,
We had similar feedback from other Customers, so a request has been created and it will be improved in future releases of the product.
My colleague David put a great PowerShell together you might want to give it a try on your VBR:
Change the path to wherever you want it.
Thanks!
We had similar feedback from other Customers, so a request has been created and it will be improved in future releases of the product.
My colleague David put a great PowerShell together you might want to give it a try on your VBR:
Code: Select all
using namespace System.Collections.Generic
function Get-VBRTapesInLibrary {
param(
[Veeam.Backup.PowerShell.Infos.VBRTapeLibrary[]]$Library
)
$TapesInLibrary = Get-VBRTapeMedium | Where-Object {$_.LibraryID -eq $Library.id}
return $TapesInLibrary
}
function New-TapeLocationPropertiesObject {
param(
[Veeam.Backup.PowerShell.Infos.VBRTapeMedium[]]$tapemedium
)
$TapeBarcode = $tapemedium.Barcode
$TapeName = $tapemedium.Name
$TapeLocation = $tapemedium.Location.Type
if($tapemedium.Location.Type -eq "Drive"){
$LocationAddress = ($Drives | Where-Object {$_.id -eq $tapemedium.Location.DriveID}).Name
} else {
$LocationAddress = $tapemedium.Location.SlotAddress
}
$TapeLibrary = $tapemedium.LibraryID
$TapeObjectProperties = [PSCustomObject]@{
TapeBarcode = $TapeBarcode
TapeName = $TapeName
TapeLocation = $TapeLocation
LocationAddress = $LocationAddress
TapeLibrary = $TapeLibrary
}
return $TapeObjectProperties
}
$Libraries = Get-VBRTapeLibrary
$Drives = Get-VBRTapeDrive
$LibraryInventory = [List[Object]]@()
Foreach($tl in $Libraries){
$TapesInLibrary = Get-VBRTapesInLibrary -Library $tl
Foreach($tape in $TapesInLibrary){
$TapeProperties = New-TapeLocationPropertiesObject -tapemedium $tape
$LibraryInventory.Add($TapeProperties)
}
}
$LibraryInventory | Export-Csv -NoTypeInformation -Path C:\temp\TapeLibraryInventoryReport.csv
Thanks!
Jorge de la Cruz
Senior Product Manager | Veeam ONE @ Veeam Software
@jorgedlcruz
https://www.jorgedelacruz.es / https://jorgedelacruz.uk
vExpert 2014-2024 / InfluxAce / Grafana Champion
Senior Product Manager | Veeam ONE @ Veeam Software
@jorgedlcruz
https://www.jorgedelacruz.es / https://jorgedelacruz.uk
vExpert 2014-2024 / InfluxAce / Grafana Champion
Who is online
Users browsing this forum: No registered users and 7 guests