Private/Utils/Initialize-ApiStatistics.ps1
|
function Initialize-ApiStatistics { <# .SYNOPSIS Initialize global API call statistics tracking. .DESCRIPTION Creates a module-scoped hashtable to track Azure API call metrics including: - Total API calls - Throttled calls (HTTP 429) - Failed calls - Cache hits and misses - Execution duration .EXAMPLE Initialize-ApiStatistics # Creates $script:ApiCallStats with zeroed counters .OUTPUTS None #> [CmdletBinding()] param() # Create module-scoped statistics hashtable $script:ApiCallStats = @{ TotalCalls = 0 ThrottledCalls = 0 FailedCalls = 0 CacheHits = 0 CacheMisses = 0 StartTime = Get-Date PolicyDefinitionCalls = 0 PolicySetDefinitionCalls = 0 PolicyAssignmentCalls = 0 ManagementGroupCalls = 0 SubscriptionCalls = 0 } Write-Debug "API statistics initialized at $(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')" } |