141 lines
4.5 KiB
Transact-SQL
141 lines
4.5 KiB
Transact-SQL
USE [HCITools]
|
|
GO
|
|
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[mon_Transfert_Stats_SP]') AND type in (N'P', N'PC'))
|
|
DROP PROCEDURE [dbo].[mon_Transfert_Stats_SP]
|
|
GO
|
|
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[mon_Transfert_Stats_SP]') AND type in (N'P', N'PC'))
|
|
BEGIN
|
|
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[mon_Transfert_Stats_SP] AS'
|
|
END
|
|
GO
|
|
|
|
|
|
|
|
ALTER PROCEDURE [dbo].[mon_Transfert_Stats_SP]
|
|
@in_debug tinyint = 0
|
|
AS
|
|
/*=============================================================================
|
|
|
|
Explication du traitement realise par la SP
|
|
-------------------------------------------
|
|
La SP va transferer l'ensemble des statistiques des procédures stockées contenues dans la table HCITools.dbo.Stats_SP vers la table HCITools.dbo.All_Stats_SP de la centrale
|
|
|
|
Contexte d'utilisation
|
|
----------------------
|
|
Appelé depuis le job D9208X - Transfert Stats SP
|
|
|
|
Parametres
|
|
----------
|
|
@in_debug : non utilisé
|
|
|
|
Creation : 23.09.20 / FLA
|
|
|
|
Modifications :
|
|
|
|
=============================================================================*/
|
|
|
|
set nocount on;
|
|
|
|
|
|
/*------------------- Declaration des variables --------------------*/
|
|
|
|
declare @cvCurrentOrganizationalUnit int,
|
|
@CV_OUT_value varchar(8000),
|
|
@ou_code varchar(10),
|
|
@ServerName varchar(20),
|
|
@restartdate datetime,
|
|
@errno int,
|
|
@errmsg varchar(255),
|
|
@LnkSrv varchar(15),
|
|
@cmd varchar(8000),
|
|
@Entity varchar(4)
|
|
|
|
/*------------ Affectation des parametres aux variables ------------*/
|
|
|
|
select @cvCurrentOrganizationalUnit = null ;
|
|
|
|
/*-------------------------- Traitement ---------------------------*/
|
|
|
|
|
|
IF EXISTS (SELECT type FROM master.cfg.InstanceContext WHERE type = 'PROD')
|
|
BEGIN
|
|
|
|
BEGIN TRY
|
|
|
|
exec arizona.dbo.sp_bmc_Bmc_Applic_Default
|
|
@in_job_type = 3,
|
|
@in_param_int_1 = null,
|
|
@in_param_int_2 = null,
|
|
@in_param_varchar_1 = 'cvCurrentOrganizationalUnit',
|
|
@out_default_value = @CV_out_value output,
|
|
@out_param_int_1 = null;
|
|
select @cvCurrentOrganizationalUnit = convert(int,@CV_out_value)
|
|
|
|
select @ou_code = ou.ou_code
|
|
from arizona.dbo.Organizational_unit ou (nolock)
|
|
where ou.Organizational_unit_ID = @cvCurrentOrganizationalUnit
|
|
|
|
SELECT @Entity = [Customer] FROM [master].[cfg].[Identity]
|
|
|
|
IF @Entity = 'RUEG'
|
|
BEGIN
|
|
SET @Entity = 'AAI'
|
|
END
|
|
|
|
SET @ServerName = @Entity+isnull(@ou_code,'')+'APS'
|
|
|
|
select @RestartDate = MIN(login_time)
|
|
from sys.sysprocesses
|
|
|
|
IF @Entity = 'AAI'
|
|
SET @LnkSrv = 'CENTRALEDATA'
|
|
ELSE
|
|
SET @LnkSrv = 'ARIZONACASH'
|
|
|
|
SET @cmd = 'INSERT INTO '+@LnkSrv+'.HCITools.dbo.All_Stats_SP
|
|
SELECT TOP 50000 '''+@ServerName+''',[Stats_SP_ID]
|
|
,[SS_schemaname]
|
|
,[SS_databasename]
|
|
,[SS_name] [sysname]
|
|
,[SS_type] [nvarchar]
|
|
,[SS_execution_count]
|
|
,[SS_last_execution_time]
|
|
,[SS_total_worker_time]
|
|
,[SS_total_physical_reads]
|
|
,[SS_total_logical_writes]
|
|
,[SS_total_logical_reads]
|
|
,[SS_total_elapsed_time]
|
|
,[SS_updatedate]
|
|
,[SS_restartdate]
|
|
,NULL
|
|
FROM [HCITools].[dbo].[Stats_SP] sp WITH (NOLOCK)
|
|
WHERE SS_updatedate < CAST('''+CONVERT(nvarchar(30),@RestartDate,126)+''' as datetime)'
|
|
|
|
EXEC (@cmd)
|
|
|
|
/*---------------------- Traitement des erreurs ----------------------*/
|
|
END TRY
|
|
BEGIN CATCH
|
|
|
|
/* Traitement des erreurs (avec RaiseError) */
|
|
EXEC dbo.get_Error_Info @in_RaiseError = 1
|
|
|
|
END CATCH
|
|
|
|
END
|
|
|
|
|
|
|
|
|
|
GO
|
|
|
|
|