Open for Voting
over 2 years ago

Undeleting an element (node/interface/volume etc.)

A few minutes ago I accidentally deleted my backbone switch (and all the interfaces of course). Since undeleting an element (node, interface etc.) is not possible (Except restoring SQL from backup) it means that I've lost all the interface statistics, node statistics (CPU, Memory, Availability) and atlas map drawing. And this is not my first time. This is a common issue for all of us. If NPM can remember an element for a specific period of time that would be great. I think It shouldn't be that hard to implement this.

PS; Please vote these ideas also if you like them of course. And I bet you do. emoticons_happy.png

Parents
  • ... and yesterday afternoon someone deleted one of our routers with over 700 interfaces on it accidentally. I've hacked up the following database trigger, which I hope will stop this from happening again. Getting back the lost data is not going to be fun: if I could spend thwack-points on getting this feature I would!

    USE [SolarWindsOrion]
    GO
    /****** Object:  Trigger [dbo].[usr_BlockNodeDelete]    Script Date: 01/06/2015 10:37:18 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author:      Richard Letts 
    -- Create date: 2015-01-06
    -- Description:     block deletes of nodes
    -- =============================================
    CREATE TRIGGER [dbo].[usr_BlockNodeDelete]
       ON  [dbo].[Nodes]
       INSTEAD OF DELETE
    AS 
    BEGIN
        IF @@rowcount > 0
        BEGIN
            RAISERROR( 'Nodes cannot be deleted!', 16, 2 )
            ROLLBACK
        END
    
    END
    
Comment
  • ... and yesterday afternoon someone deleted one of our routers with over 700 interfaces on it accidentally. I've hacked up the following database trigger, which I hope will stop this from happening again. Getting back the lost data is not going to be fun: if I could spend thwack-points on getting this feature I would!

    USE [SolarWindsOrion]
    GO
    /****** Object:  Trigger [dbo].[usr_BlockNodeDelete]    Script Date: 01/06/2015 10:37:18 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author:      Richard Letts 
    -- Create date: 2015-01-06
    -- Description:     block deletes of nodes
    -- =============================================
    CREATE TRIGGER [dbo].[usr_BlockNodeDelete]
       ON  [dbo].[Nodes]
       INSTEAD OF DELETE
    AS 
    BEGIN
        IF @@rowcount > 0
        BEGIN
            RAISERROR( 'Nodes cannot be deleted!', 16, 2 )
            ROLLBACK
        END
    
    END
    
Children