126 lines
5.3 KiB
Transact-SQL
126 lines
5.3 KiB
Transact-SQL
USE [HCITools]
|
|
GO
|
|
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1
|
|
FROM sys.objects o WITH (NOLOCK)
|
|
JOIN sys.schemas s WITH (NOLOCK) ON o.schema_id = s.schema_id
|
|
WHERE o.name = 'DBA_monitoring_alerts'
|
|
AND o.type IN (N'U')
|
|
AND s.name = 'mon')
|
|
BEGIN
|
|
|
|
PRINT 'Create new table [DBA_monitoring_alerts]'
|
|
CREATE TABLE [mon].[DBA_monitoring_alerts](
|
|
[DBA_monitoring_alerts_ID] int IDENTITY(1,1) NOT NULL,
|
|
[DBAMA_monitoring_alerts_type] int NOT NULL,
|
|
[DBAMA_short_message] varchar(40) NOT NULL,
|
|
[DBAMA_key] varchar(20) NOT NULL
|
|
CONSTRAINT [PK_DBA_monitoring_alerts] PRIMARY KEY CLUSTERED
|
|
(
|
|
[DBA_monitoring_alerts_ID] ASC
|
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 100) ON [PRIMARY]
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1
|
|
FROM sys.objects o WITH (NOLOCK)
|
|
JOIN sys.schemas s WITH (NOLOCK) ON o.schema_id = s.schema_id
|
|
WHERE o.name = 'DBA_monitoring_alerts_type'
|
|
AND o.type IN (N'U')
|
|
AND s.name = 'mon')
|
|
BEGIN
|
|
|
|
PRINT 'Create new table [DBA_monitoring_alerts_type]'
|
|
CREATE TABLE [mon].[DBA_monitoring_alerts_type](
|
|
[DBA_monitoring_alerts_type_ID] int IDENTITY(1,1) NOT NULL,
|
|
[DBAMAT_name] varchar(100) NOT NULL,
|
|
[DBAMAT_key] varchar(20) NOT NULL
|
|
CONSTRAINT [PK_DBA_monitoring_alerts_type] PRIMARY KEY CLUSTERED
|
|
(
|
|
[DBA_monitoring_alerts_type_ID] ASC
|
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 100) ON [PRIMARY]
|
|
) ON [PRIMARY]
|
|
|
|
END
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1
|
|
FROM sys.objects o WITH (NOLOCK)
|
|
JOIN sys.schemas s WITH (NOLOCK) ON o.schema_id = s.schema_id
|
|
WHERE o.name = 'DBA_monitoring_alerts_history'
|
|
AND o.type IN (N'U')
|
|
AND s.name = 'mon')
|
|
BEGIN
|
|
|
|
PRINT 'Create new table [DBA_monitoring_alerts_history]'
|
|
CREATE TABLE [mon].[DBA_monitoring_alerts_history](
|
|
[DBA_monitoring_alerts_history_ID] int IDENTITY(1,1) NOT NULL,
|
|
[DBAMAH_monitoring_alerts] int NOT NULL,
|
|
[DBAMAH_criticity_level] tinyint NOT NULL CONSTRAINT [CKDBAMAH_criticity_level] CHECK (([DBAMAH_criticity_level] IN (0,1,2))),
|
|
[DBAMAH_event_date] datetime2(0) NOT NULL CONSTRAINT DF_DBAMAH_event_date DEFAULT getdate(),
|
|
[DBAMAH_long_message] varchar(max) NOT NULL
|
|
CONSTRAINT [PK_DBA_monitoring_alerts_history] PRIMARY KEY CLUSTERED
|
|
(
|
|
[DBA_monitoring_alerts_history_ID] ASC
|
|
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 100) ON [PRIMARY]
|
|
) ON [PRIMARY]
|
|
|
|
|
|
EXEC sys.sp_addextendedproperty @name=N'0', @value=N'OK' , @level0type=N'SCHEMA',@level0name=N'mon', @level1type=N'TABLE',@level1name=N'DBA_monitoring_alerts_history', @level2type=N'COLUMN',@level2name=N'DBAMAH_criticity_level'
|
|
EXEC sys.sp_addextendedproperty @name=N'1', @value=N'Warning' , @level0type=N'SCHEMA',@level0name=N'mon', @level1type=N'TABLE',@level1name=N'DBA_monitoring_alerts_history', @level2type=N'COLUMN',@level2name=N'DBAMAH_criticity_level'
|
|
EXEC sys.sp_addextendedproperty @name=N'2', @value=N'Critical' , @level0type=N'SCHEMA',@level0name=N'mon', @level1type=N'TABLE',@level1name=N'DBA_monitoring_alerts_history', @level2type=N'COLUMN',@level2name=N'DBAMAH_criticity_level'
|
|
|
|
END
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1
|
|
FROM sys.foreign_keys fk
|
|
WHERE fk.object_id = OBJECT_ID(N'[mon].[FKDBAMAHmonitoringalerts]')
|
|
AND fk.parent_object_id = OBJECT_ID(N'[mon].[DBA_monitoring_alerts_history]'))
|
|
BEGIN
|
|
PRINT 'Create foreign key [FKDBAMAHmonitoringalerts] on table [DBA_monitoring_alerts_history]'
|
|
ALTER TABLE [mon].[DBA_monitoring_alerts_history] WITH CHECK ADD CONSTRAINT [FKDBAMAHmonitoringalerts] FOREIGN KEY([DBAMAH_monitoring_alerts])
|
|
REFERENCES [mon].[DBA_monitoring_alerts] ([DBA_monitoring_alerts_ID])
|
|
END
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT 1
|
|
FROM sys.foreign_keys fk
|
|
WHERE fk.object_id = OBJECT_ID(N'[mon].[FKDBAMAmonitoringtype]')
|
|
AND fk.parent_object_id = OBJECT_ID(N'[mon].[DBA_monitoring_alerts]'))
|
|
BEGIN
|
|
PRINT 'Create foreign key [FKDBAMAmonitoringtype] on table [DBA_monitoring_alerts]'
|
|
ALTER TABLE [mon].[DBA_monitoring_alerts] WITH CHECK ADD CONSTRAINT [FKDBAMAmonitoringtype] FOREIGN KEY([DBAMA_monitoring_alerts_type])
|
|
REFERENCES [mon].[DBA_monitoring_alerts_type] ([DBA_monitoring_alerts_type_ID])
|
|
END
|
|
GO
|
|
|
|
|
|
|
|
/* INIT
|
|
INSERT INTO [HCITools].[mon].[DBA_monitoring_alerts_type] (DBAMAT_name,DBAMAT_key)
|
|
VALUES ('SQL Replications','REPL')
|
|
|
|
INSERT INTO [HCITools].[mon].[DBA_monitoring_alerts] (DBAMA_monitoring_alerts_type, DBAMA_short_message, DBAMA_key)
|
|
VALUES
|
|
(1,'OK','OK'),
|
|
(1,'Maintenance jobs','MaintJobs'),
|
|
(1,'Missing articles','MissArt'),
|
|
(1,'POS linked server','POSLinked'),
|
|
(1,'POS Missed in subscription','SubMiss'),
|
|
(1,'Replinibackup share','Replini'),
|
|
(1,'Authentification Windows','Auth'),
|
|
(1,'POS subscription','SubCheck'),
|
|
(1,'Snapshot agent','SnapAgt'),
|
|
(1,'Log reader agent','LogReadAgt'),
|
|
(1,'Duplicate jobs','DuplicJobs'),
|
|
(1,'Undistributed','UndistCmd')
|
|
*/ |