Skip to content

Commit de8d90f

Browse files
committed
7.4.1 hotfix
Fix cmdlet exports changed due to linting changes
1 parent 583f10c commit de8d90f

33 files changed

+141
-69
lines changed

Logic.Monitor.psm1

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,41 @@ Foreach ($import in @($Public + $Private)) {
1212
}
1313
}
1414

15-
Export-ModuleMember -Function $Public.Basename
15+
# Plural function wrappers for backward compatibility +7.4
16+
function Set-LMNormalizedProperties { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Set-LMNormalizedProperty @Args }
17+
function Remove-LMNormalizedProperties { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Remove-LMNormalizedProperty @Args }
18+
function New-LMNormalizedProperties { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) New-LMNormalizedProperty @Args }
19+
function Import-LMRepositoryLogicModules { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Import-LMRepositoryLogicModule @Args }
20+
function Get-LMWebsiteGroupAlerts { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMWebsiteGroupAlert @Args }
21+
function Get-LMWebsiteAlerts { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMWebsiteAlert @Args }
22+
function Get-LMUsageMetrics { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMUsageMetric @Args }
23+
function Get-LMRepositoryLogicModules { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMRepositoryLogicModule @Args }
24+
function Get-LMNormalizedProperties { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMNormalizedProperty @Args }
25+
function Get-LMNetscanExecutionDevices { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMNetscanExecutionDevice @Args }
26+
function Get-LMIntegrationLogs { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMIntegrationLog @Args }
27+
function Get-LMDeviceNetflowPorts { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceNetflowPort @Args }
28+
function Get-LMDeviceNetflowFlows { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceNetflowFlow @Args }
29+
function Get-LMDeviceNetflowEndpoints { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceNetflowEndpoint @Args }
30+
function Get-LMDeviceGroupDevices { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceGroupDevice @Args }
31+
function Get-LMDeviceGroupAlerts { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceGroupAlert @Args }
32+
function Get-LMDeviceDatasourceInstanceAlertRecipients { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceDatasourceInstanceAlertRecipient @Args }
33+
function Get-LMDeviceAlertSettings { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDeviceAlertSetting @Args }
34+
function Get-LMDatasourceAssociatedDevices { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMDatasourceAssociatedDevice @Args }
35+
function Get-LMCostOptimizationRecommendations { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMCostOptimizationRecommendation @Args }
36+
function Get-LMCostOptimizationRecommendationCategories { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMCostOptimizationRecommendationCategory @Args }
37+
function Get-LMAuditLogs { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Get-LMAuditLog @Args }
38+
function Find-LMDashboardWidgets { [CmdletBinding()] param([Parameter(ValueFromRemainingArguments = $true)][Object[]]$Args) Find-LMDashboardWidget @Args }
39+
40+
# Export both singular and plural names
41+
$AllCmdlets = $Public | ForEach-Object { $_.BaseName }
42+
$Plural = @(
43+
'Set-LMNormalizedProperties','Remove-LMNormalizedProperties','New-LMNormalizedProperties','Import-LMRepositoryLogicModules',
44+
'Get-LMWebsiteGroupAlerts','Get-LMWebsiteAlerts','Get-LMUsageMetrics','Get-LMRepositoryLogicModules','Get-LMNormalizedProperties',
45+
'Get-LMNetscanExecutionDevices','Get-LMIntegrationLogs','Get-LMDeviceNetflowPorts','Get-LMDeviceNetflowFlows','Get-LMDeviceNetflowEndpoints',
46+
'Get-LMDeviceGroupDevices','Get-LMDeviceGroupAlerts','Get-LMDeviceDatasourceInstanceAlertRecipients','Get-LMDeviceAlertSettings',
47+
'Get-LMDatasourceAssociatedDevices','Get-LMCostOptimizationRecommendations','Get-LMCostOptimizationRecommendationCategories',
48+
'Get-LMAuditLogs','Find-LMDashboardWidgets'
49+
) | ForEach-Object { [string]$_ }
50+
$Singular = $AllCmdlets | Where-Object { $Plural -notcontains $_ } | ForEach-Object { [string]$_ }
51+
52+
Export-ModuleMember -Function ($Singular + $Plural)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
function New-LMDeviceGroupFromPath {
2+
param (
3+
[String]$Path,
4+
5+
[String]$PreviousGroupId
6+
)
7+
8+
if ($PreviousGroupId) {
9+
$GroupId = (Get-LMDeviceGroup -Filter "name -eq '$Path' -and parentId -eq '$PreviousGroupId'").Id
10+
if (!$GroupId) {
11+
$GroupId = (New-LMDeviceGroup -Name $Path -ParentGroupId $PreviousGroupId).Id
12+
}
13+
return $GroupId
14+
}
15+
else {
16+
$GroupId = (Get-LMDeviceGroup -Filter "name -eq '$Path' -and parentId -eq '1'").Id
17+
if (!$GroupId) {
18+
$GroupId = (New-LMDeviceGroup -Name $Path -ParentGroupId 1).Id
19+
}
20+
return $GroupId
21+
}
22+
}

Public/Copy-LMDevicePropertyToDevice.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ function Copy-LMDevicePropertyToDevice {
6868
}
6969
}
7070
else {
71-
$devices = Get-LMDeviceGroupDevices -Id $SourceGroupId
71+
$devices = Get-LMDeviceGroupDevice -Id $SourceGroupId
7272
if (!$devices) {
7373
Write-Error "No devices found in source group with ID $SourceGroupId"
7474
return

Public/Copy-LMDevicePropertyToGroup.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ function Copy-LMDevicePropertyToGroup {
6868
}
6969
}
7070
else {
71-
$devices = Get-LMDeviceGroupDevices -Id $SourceGroupId
71+
$devices = Get-LMDeviceGroupDevice -Id $SourceGroupId
7272
if (!$devices) {
7373
Write-Error "No devices found in source group with ID $SourceGroupId"
7474
return

Public/Export-LMDeviceConfigBackup.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ function Export-LMDeviceConfigBackup {
6363
$network_devices = Get-LMDevice -id $DeviceId
6464
}
6565
else {
66-
$network_devices = Get-LMDeviceGroupDevices -id $DeviceGroupId
66+
$network_devices = Get-LMDeviceGroupDevice -id $DeviceGroupId
6767
}
6868

6969
#Loop through Network group devices and pull list of applied ConfigSources

Public/Export-LMDeviceData.ps1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,8 @@ function Export-LMDeviceData {
9696
"DeviceId" { $DeviceList = Get-LMDevice -Id $DeviceId }
9797
"DeviceDisplayName" { $DeviceList = Get-LMDevice -DisplayName $DeviceDisplayName }
9898
"DeviceHostName" { $DeviceList = Get-LMDevice -Name $DeviceHostName }
99-
"DeviceGroupId" { $DeviceList = Get-LMDeviceGroupDevices -Id $DeviceGroupId }
100-
"DeviceGroupName" { $DeviceList = Get-LMDeviceGroupDevices -Name $DeviceGroupName }
99+
"DeviceGroupId" { $DeviceList = Get-LMDeviceGroupDevice -Id $DeviceGroupId }
100+
"DeviceGroupName" { $DeviceList = Get-LMDeviceGroupDevice -Name $DeviceGroupName }
101101
}
102102

103103
if ($DeviceList) {

Public/Find-LMDashboardWidgets.ps1 renamed to Public/Find-LMDashboardWidget.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Find list of dashboard widgets containing mention of specified datasources
66
Find list of dashboard widgets containing mention of specified datasources
77
88
.EXAMPLE
9-
Find-LMDashboardWidgets -DatasourceNames @("SNMP_NETWORK_INTERFACES","VMWARE_VCETNER_VM_PERFORMANCE")
9+
Find-LMDashboardWidget -DatasourceNames @("SNMP_NETWORK_INTERFACES","VMWARE_VCETNER_VM_PERFORMANCE")
1010
1111
.NOTES
1212
Created groups will be placed in a main group called Azure Resources by Subscription in the parent group specified by the -ParentGroupId parameter

Public/Get-LMAuditLogs.ps1 renamed to Public/Get-LMAuditLog.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Retrieves audit logs from LogicMonitor.
44
55
.DESCRIPTION
6-
The Get-LMAuditLogs function retrieves audit logs from LogicMonitor based on the specified parameters. It supports retrieving logs by ID, by date range, or by applying filters. The function can retrieve up to 10000 logs in a single query.
6+
The Get-LMAuditLog function retrieves audit logs from LogicMonitor based on the specified parameters. It supports retrieving logs by ID, by date range, or by applying filters. The function can retrieve up to 10000 logs in a single query.
77
88
.PARAMETER Id
99
The ID of the specific audit log to retrieve. This parameter is part of a mutually exclusive parameter set.
@@ -25,11 +25,11 @@ The number of results to return per request. Must be between 1 and 1000. Default
2525
2626
.EXAMPLE
2727
#Retrieve audit logs from the last week
28-
Get-LMAuditLogs -StartDate (Get-Date).AddDays(-7)
28+
Get-LMAuditLog -StartDate (Get-Date).AddDays(-7)
2929
3030
.EXAMPLE
3131
#Search for specific audit logs
32-
Get-LMAuditLogs -SearchString "login" -StartDate (Get-Date).AddDays(-30)
32+
Get-LMAuditLog -SearchString "login" -StartDate (Get-Date).AddDays(-30)
3333
3434
.NOTES
3535
You must run Connect-LMAccount before running this command. Maximum of 10000 logs can be retrieved in a single query.

Public/Get-LMCostOptimizationRecommendations.ps1 renamed to Public/Get-LMCostOptimizationRecommendation.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Retrieves cloud cost optimization recommendations from LogicMonitor.
44
55
.DESCRIPTION
6-
The Get-LMCostOptimizationRecommendations function retrieves cloud cost optimization recommendations from a connected LogicMonitor portal.
6+
The Get-LMCostOptimizationRecommendation function retrieves cloud cost optimization recommendations from a connected LogicMonitor portal.
77
88
.PARAMETER Id
99
The alphanumeric ID of the cost optimization recommendation to retrieve. Example: 1-2-EBS_UNATTACHED
@@ -16,11 +16,11 @@ The number of results to return per request. Must be between 1 and 1000. Default
1616
1717
.EXAMPLE
1818
#Retrieve all cost optimization recommendations
19-
Get-LMCostOptimizationRecommendations
19+
Get-LMCostOptimizationRecommendation
2020
2121
.EXAMPLE
2222
#Retrieve cost optimization recommendations using a filter
23-
Get-LMCostOptimizationRecommendations -Filter 'recommendationCategory -eq "Underutilized AWS EC2 instances"'
23+
Get-LMCostOptimizationRecommendation -Filter 'recommendationCategory -eq "Underutilized AWS EC2 instances"'
2424
2525
.NOTES
2626
You must run Connect-LMAccount before running this command. When using filters, consult the LM API docs for allowed filter fields.

Public/Get-LMCostOptimizationRecommendationCategories.ps1 renamed to Public/Get-LMCostOptimizationRecommendationCategory.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Retrieves cloud cost optimization recommendation categories from LogicMonitor.
44
55
.DESCRIPTION
6-
The Get-LMCostOptimizationRecommendationCategories function retrieves cloud cost optimization recommendation categories from a connected LogicMonitor portal.
6+
The Get-LMCostOptimizationRecommendationCategory function retrieves cloud cost optimization recommendation categories from a connected LogicMonitor portal.
77
88
.PARAMETER Filter
99
A filter object to apply when retrieving cost optimization recommendation categories. Only recommendationCategory and recommendationStatus are supported for filtering using the equals operator all others are not supported at this time.
@@ -13,11 +13,11 @@ The number of results to return per request. Must be between 1 and 1000. Default
1313
1414
.EXAMPLE
1515
#Retrieve all cost optimization recommendation categories
16-
Get-LMCostOptimizationRecommendationCategories
16+
Get-LMCostOptimizationRecommendationCategory
1717
1818
.EXAMPLE
1919
#Retrieve cost optimization recommendation categories using a filter
20-
Get-LMCostOptimizationRecommendationCategories -Filter 'recommendationCategory -eq "Underutilized AWS EC2 instances"'
20+
Get-LMCostOptimizationRecommendationCategory -Filter 'recommendationCategory -eq "Underutilized AWS EC2 instances"'
2121
2222
.NOTES
2323
You must run Connect-LMAccount before running this command. When using filters, consult the LM API docs for allowed filter fields.

0 commit comments

Comments
 (0)