This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Moving monitors between devices

I've upgraded to v9 and it imported all my monitors.  It created a device for every monitor, which was pretty helpful.  The problem I have now, though, is that I want to move monitors from one device to another, as I don't need 1500 devices.  For instance, I have a router with 400+ T1s attached to it.  Each one of those v8 monitors had a v9 device created.  I need to move all of those devices' monitors to my main router device.

I've tried several different methods and none will work, including moving monitors to the Orphaned Monitors group.  My next step is to export all my monitors, delete them all, then re-add them back in without parent IDs. 

While I did spend a few months testing the beta version, this particular scenario did not present itself, as I had assumed all the monitors would be imported as Orphaned Monitors and I could just associate them to devices from there.

  • Hello Bleearg.

    Don't delete your monitors! There's a way to do this via the UI. Add this global behavior modifier to your installation:
    monitors.orphan.enable = 1

    This global behavior modifier opens up a code branch that will move that one Monitor to the Orphaned Objects group. From there Monitors can be re-associated with any device you want. The button will be within the appropriate Monitor Edit screen.

    A really technical way to do this is to use the XML export/import mechanism and to set the "parentid" to "0" of the Monitor.

    See this post for details (before reading further):  

    I'd leverage ipMonitor's underpinnings with Regex because I'm quite comfortable with it. This is how I would do this (I don't expect anyone outside of our support staff to come up with this):

    1. Make a Group / SmartGroup that contains all the Monitors you are going to orphan.
    2. Add the "ID" Column and drop all the columns but that one.
    3. Select all the IDs within the browser & cut and paste them into a "good" text editor.
    4. Assuming each id is on its own line, replace all the line feeds with "|"
    5. Remove all the whitespace.
    6. Remove all instances of "||" with "|". <-- important
    7. Also ensure that there is no trailing "|"
    8. Prepend all this text with: [<]parentid(
    9. Append all this text with: )[>]
    10. Now you've got one huge Regex. Replace all matches with <parentid>0</parentid>
    11. Then import the modified monitor-only export.
     
    Note: Depending on your "good" text editor, you might need to tweak "(" and ")". I think UltraEdit has a different syntax for grouping.
  • To add to Peter's post, here's how you would add the Behavior Modifier: 

    1. Go to "Configuration" Tab
    2. Click "Global Behavior Modifiers" option.
    3. Click "Add"
    4. Enter the following values:

    Name: monitors.orphan.enable
    Value: 1

    5. Click OK.

    Now to move the Monitor(s) to a different Device:
     
    6. Open the settings page for the Monitor in question and click the "Move to Orphaned Objects".
    7. Click the "Orphaned Objects" group on the left-hand pane.
    8. Click the moved Monitor in order to open its settings page and click the "Move" button.
    9. Select the Device you wish to move it to and click Continue.

    That should do it.

    Chris Foley
    SolarWinds Support Specialist

  • I actually already saw that post, so I added the Behavior Modifier to the list earlier today.  I still don't see where the button is, though.  If I drill down into the monitor settings, I don't see any additional buttons.  I'm assuming I would see it in the view where all the timing settings and what-not are configured, correct?

    I'll probably have to export and reset them all to '0', since I'm dealing with such a large amount monitors, but I'd still like to know what's up with the missing button.  :-) 

  • If I drill down into the monitor settings, I don't see any additional buttons.

    It should be on the far right of the Edit Monitor toolbar (it doesn't have its own icon) and you may have to scroll to get to it. Look for "Move to Orphaned Objects".

    I did realize that we were talking a lot of Monitors, so the export/import would be easiest for you... that is if you don't have an intern that can do your clicking for you. :-)



  • It should be on the far right of the Edit Monitor toolbar (it doesn't have its own icon) and you may have to scroll to get to it. Look for "Move to Orphaned Objects".



    I've attached a screenshot of my monitor window.  I don't see where it should be.  I'm unable to scroll left or right in the page.  No love for me today :-(

  • OH CRAP!  I think I may have installed the wrong version here.  *sigh*  I just realized that I probably double-clicked the wrong .exe this morning.

    *sigh again* 

    DURR - I YUZE CUMPUTIR GOOD 

  • A really technical way to do this is to use the XML export/import mechanism and to set the "parentid" to "0" of the Monitor.


    See this post for details (before reading further):  

    I'd leverage ipMonitor's underpinnings with Regex because I'm quite comfortable with it. This is how I would do this (I don't expect anyone outside of our support staff to come up with this):

    1. Make a Group / SmartGroup that contains all the Monitors you are going to orphan.
    2. Add the "ID" Column and drop all the columns but that one.
    3. Select all the IDs within the browser & cut and paste them into a "good" text editor.
    4. Assuming each id is on its own line, replace all the line feeds with "|"
    5. Remove all the whitespace.
    6. Remove all instances of "||" with "|". <-- important
    7. Also ensure that there is no trailing "|"
    8. Prepend all this text with: [<]parentid(
    9. Append all this text with: )[>]
    10. Now you've got one huge Regex. Replace all matches with <parentid>0</parentid>
    11. Then import the modified monitor-only export.
     
    Note: Depending on your "good" text editor, you might need to tweak "(" and ")". I think UltraEdit has a different syntax for grouping.

     

    I think I found a much easier way to do this.  After adding the Behavior Modifier, I am actually able to go into the All Managed Devices, select a Device, Delete it, and the monitor shows up under Orphaned Monitors.  Are there any unintended side effects from doing it this way as opposed to your way?  I attempted the method above, but you lost me at step 10.  I'm not sure what the Regex is for - I was able to export all the monitors to Notepad++ and use the regex of "<parentid>[0-9]+</parentid>" to replace all the IDs.

    It's entirely possible that your example may be understandable to others - remember, I did install the beta version earlier today and wondered why things didn't look as they should have.  :-/
     

  • Are there any unintended side effects from doing it this way as opposed to your way?

    Try this again on a specific Monitor. Next, recycle the service and verify that the Monitor is still orphaned. If it is, there are no unintended side effects.

  • Surely there must be a simpler way to do moves????

  • Fodome's post in this thread (Jan 24 2008) is quite simple. Please give it a try.