I need to make a report with Powershell-AWS Sdk for AWS Backup.
Actually i have the current report :
I want to add column on the left with Name Instance TAG for each raw match with VolumeId for more friendly use and read more easly if Instance is backup or not.
Thanks.
# AWS Credentials
Set-AWSCredential -ProfileName XXXX
Set-DefaultAWSRegion -Region XXXXX
$date = (get-date -Format "MM-dd-yyyy" (Get-Date).AddDays(-1)) #Last day
$Body = @"
<style>
body {
background-color: #CAD2D3;
}
</style>
<h1><img src="https://i.ibb.co/cvHLWfN/transparent-aws-logo.png" alt="transparent-aws-logo" width="189" height="69" border="0" /> <span style="color: #000000;"><strong>AWS BACKUP STATUS</strong></span></h1>
<p>The following report was run on $(get-date).</p>
"@
$Header = @"
<style>
TABLE {border-width: 2px; border-style: solid; border-color: black; border-collapse: collapse;}
TH {border-width: 2px; padding: 3px; border-style: solid; border-color: black; background-color: #6495ED;}
TD {border-width: 2px; padding: 3px; border-style: solid; border-color: black;}
</style>
"@
Get-BAKBackupJobList -ByCreatedAfter $date | Select-Object -Property @{Label = 'VolumeId'; Expression = { $_.ResourceArn.substring($_.ResourceArn.length - 21) } }, @{Label = 'BackupSizeInGB'; Expression = { [int]($_.BackupSizeInBytes / 1GB) } }, BackupJobId, CreationDate, CompletionDate, State |
ConvertTo-Html -Head $Header -Body $Body | ForEach-Object {
$PSItem -replace "<td>COMPLETED</td>", "<td style='background-color:#7CFC00'>COMPLETED</td>" } | out-file "E:\Report\AWSBackup\Report_AWSBackup-$date.html"
BastosAWS.
Update :
I find what I would like by created PSCustomObject : It's working!
Code: