tdanner ✭✭✭✭✭

Comments

  • This was implemented in Orion Platform 2018.4/NPM 12.4. You can query and update Orion.ResourceProperties now.
  • RETURN XML AUTO is intended for use with navigation properties. As part of query processing, navigation properties are transformed into joins but also annotated with structural information that later gets used to create the XML AUTO format. There is no SWQL syntax for this structural information - it only exists in the…
  • You are in luck! We just posted SDK 1.5, which has a sample PowerShell script for doing various group manipulations, including calling CreateContainer. You can download it from http://downloads.solarwinds.com/solarwinds/Release/Orion/OrionSDK-v1.5.zip.
  • I assume you mean Integrated Windows Authentication? No, that can't be bypassed with extra stuff in the URL. Either the account making the request has valid Windows credentials or it doesn't. Sorry!
  • Two of the most common simple tasks I hear about people using are: * to tie alerts into some other system - e.g., when X happens, then acknowledge a certain alert in NPM * to tie node unmanage into some other system - e.g., when X happens, then unmanage a certain node in NPM for two hours
  • Thanks, Bryan. I put in a bug for us to add an icon for that type. I don't know why you seem to have the red lightning for 171.gif, but I don't think that's supposed to be the icon for POS.
  • This poor performance is tracked internally as CORE-10460. It is not addressed in the upcoming Orion Platform 2018.2, but I will attempt to get it fixed in the next one.
  • This is in the Orion.NodeSettings entity with a SettingName of "ViewId" and a SettingValue equal to the desired ViewID. A View Type of "(default)" corresponds to no setting. You can look up the ViewID values by querying Orion.Views. Newly-created nodes will have no value in Orion.NodeSettings, so you can just create an…
  • That should work as long as none of your custom property values contain a comma, but here's what Bohumil was referring to: Get-SwisData $target "SELECT N.Caption, N.CustomProperties.xxxx, N.CustomProperties.xxxxx FROM Orion.Nodes N" | Export-Csv $ExportFile
  • What does your code for adding the volume pollers look like?
  • Another suggestion: when developing a new query, start in SWQL Studio. Once you are happy with the query results, then copy the query into PowerShell or whatever language to build your automation. You can download SWQL Studio here: Releases · solarwinds/OrionSDK · GitHub Here's a basic query for getting the list of active…
  • REPLACE is a very obvious one to add. I'll open a bug for that. PIVOT is a pretty complex SQL feature that changes the structure of the result set. It would definitely be useful, but it would take significant effort to add it to SWQL.
  • Ok, now I get it. And what version of NPM are you using?
  • Is there just one node to update? Or many nodes such that you need to match up how NPM identifies the node and how the external API identifies them?
  • There's a file that plugs into this process and generates the AssignmentName ("{poller name} on {node name}"). For some reason, this file is not being installed on APEs. I'll open a bug to fix that. You can work around it by sending the command to the main poller instead. You might be able to work around it by specifying…
  • No, I don't think that would be possible. Adding nodes to UDT and subnets to IPAM are both more complicated than just a database update - polling schedules have to be updated.
  • When I first encountered PowerShell's array-nesting weirdness, it took me an amount of time to figure out that was less a million years but more than I care to admit! How to create array of arrays in powershell? - Stack Overflow
  • Set-SwisObject expects a uri. Best way to get a uri is with a query: $uri = Get-SwisData $swis 'SELECT Uri FROM Orion.NodeSettings WHERE NodeID=@node AND SettingName=@setting' @{node=2; setting='Core.TopologyPollInterval'} Then you can set the value: Set-SwisObject $swis $uri @{SettingValue=900} If you needed to set some…
  • I attached a version of AjaxNodeTree.js that performs this auto-continue function. Just replace this file in \Inetpub\Solarwinds\Orion\NetPerfMon\Resources\NodeSummary and it should kick in. I can't promise this feature will be in the next release, but if you are familiar with javascript it should be easy to see how it…
  • The trouble is that my Windows 2000 Servers are showing up in the "Windows 2003 Server" group and vis-versa. This is not the case with the classic all nodes resource. Any suggestions? That's weird. Are you using a SQL Filter with this resource? What about account/view limitations? Those should work, but with their infinite…
  • Answered over here: Re: Text colour to display alerts using custom query
  • No clues there. Let's go to the logs. We'll need debug-level logging to see what's going on here. But since this is an intermittent error, we need to turn on debug logging only for the specific area involved - if we turn on debug logging for the whole service, running your script will flood the log with noise. To turn on…
  • You don't need to modify the SwisClient class. When you create your instance of SwisClient, you can pass in a requests.Session object with some default headers already filled in. Like this (not tested): import requestsimport orionsdksession = requests.Session()session.headers.update({'X-SolarWinds-Impersonate':…
  • The response from tomas.vrabel was written before you found the root cause, but it got held up in the moderation queue and only got posted now. Glad you got it working!
  • devin.dao‌ posted a database (SQL) query. But we can easily turn that into an equivalent SWQL query: SELECTN.Caption,A.DisplayName,A.Status AS HWStatus,A.ValueFROM Orion.HardwareHealth.HardwareItem AINNER JOIN Orion.Nodes N ON (N.NodeID = A.NodeID)WHERE A.DisplayName LIKE 'System Board %Exhaust Temp%' OR A.DisplayName LIKE…
  • Yes, you can use the Orion SDK to write a script that will perform the steps you described.
  • Remove-SwisObject supports passing a collection of Uris via the pipeline. Like this: Get-SwisData $swis "SELECT Uri FROM Orion.NPM.Interfaces WHERE blah blah" | Remove-SwisObject $swis Or: $interfaces = Get-SwisData $swis "SELECT Uri, other-properties FROM Orion.NPM.Interfaces WHERE blah blah" $interfacesToDelete =…
  • At this time there is no supported way to programmatically assign a custom poller.
  • If you pass "-Trusted" to Connect-Swis, it will use your current Windows token to authenticate to Orion. No username/password necessary.
  • Have you tried dumping "result" to see what it looks like?