Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
T
telegraf-nftables
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Due to inactivity, this project is scheduled to be deleted on 2035-04-24.
Why is this scheduled?
Show more breadcrumbs
vqgroup
telegraf-nftables
Commits
573628db
Commit
573628db
authored
8 years ago
by
zensqlmonitor
Committed by
Cameron Sparr
8 years ago
Browse files
Options
Downloads
Patches
Plain Diff
Fix collation issue
parent
e477620d
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
plugins/inputs/sqlserver/sqlserver.go
+6
-28
6 additions, 28 deletions
plugins/inputs/sqlserver/sqlserver.go
with
6 additions
and
28 deletions
plugins/inputs/sqlserver/sqlserver.go
+
6
−
28
View file @
573628db
...
@@ -626,26 +626,22 @@ const sqlDatabaseIO string = `SET NOCOUNT ON;
...
@@ -626,26 +626,22 @@ const sqlDatabaseIO string = `SET NOCOUNT ON;
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
DECLARE @secondsBetween tinyint = 5;
DECLARE @secondsBetween tinyint = 5;
DECLARE @delayInterval char(8) = CONVERT(Char(8), DATEADD(SECOND, @secondsBetween, '00:00:00'), 108);
DECLARE @delayInterval char(8) = CONVERT(Char(8), DATEADD(SECOND, @secondsBetween, '00:00:00'), 108);
IF OBJECT_ID('tempdb..#baseline') IS NOT NULL
IF OBJECT_ID('tempdb..#baseline') IS NOT NULL
DROP TABLE #baseline;
DROP TABLE #baseline;
IF OBJECT_ID('tempdb..#baselinewritten') IS NOT NULL
IF OBJECT_ID('tempdb..#baselinewritten') IS NOT NULL
DROP TABLE #baselinewritten;
DROP TABLE #baselinewritten;
SELECT DB_NAME(mf.database_id) AS databaseName ,
SELECT DB_NAME(mf.database_id) AS databaseName ,
mf.physical_name,
mf.physical_name,
divfs.num_of_bytes_read,
divfs.num_of_bytes_read,
divfs.num_of_bytes_written,
divfs.num_of_bytes_written,
divfs.num_of_reads,
divfs.num_of_reads,
divfs.num_of_writes,
divfs.num_of_writes,
GETDATE() AS baseline
D
ate
GETDATE() AS baseline
d
ate
INTO #baseline
INTO #baseline
FROM sys.dm_io_virtual_file_stats(NULL, NULL) AS divfs
FROM sys.dm_io_virtual_file_stats(NULL, NULL) AS divfs
INNER JOIN sys.master_files AS mf ON mf.database_id = divfs.database_id
INNER JOIN sys.master_files AS mf ON mf.database_id = divfs.database_id
AND mf.file_id = divfs.file_id
AND mf.file_id = divfs.file_id
WAITFOR DELAY @delayInterval;
WAITFOR DELAY @delayInterval;
;WITH currentLine AS
;WITH currentLine AS
(
(
SELECT DB_NAME(mf.database_id) AS databaseName ,
SELECT DB_NAME(mf.database_id) AS databaseName ,
...
@@ -655,12 +651,11 @@ WAITFOR DELAY @delayInterval;
...
@@ -655,12 +651,11 @@ WAITFOR DELAY @delayInterval;
divfs.num_of_bytes_written,
divfs.num_of_bytes_written,
divfs.num_of_reads,
divfs.num_of_reads,
divfs.num_of_writes,
divfs.num_of_writes,
GETDATE() AS currentline
D
ate
GETDATE() AS currentline
d
ate
FROM sys.dm_io_virtual_file_stats(NULL, NULL) AS divfs
FROM sys.dm_io_virtual_file_stats(NULL, NULL) AS divfs
INNER JOIN sys.master_files AS mf ON mf.database_id = divfs.database_id
INNER JOIN sys.master_files AS mf ON mf.database_id = divfs.database_id
AND mf.file_id = divfs.file_id
AND mf.file_id = divfs.file_id
)
)
SELECT database_name
SELECT database_name
, datafile_type
, datafile_type
, num_of_bytes_read_persec = SUM(num_of_bytes_read_persec)
, num_of_bytes_read_persec = SUM(num_of_bytes_read_persec)
...
@@ -673,23 +668,21 @@ FROM
...
@@ -673,23 +668,21 @@ FROM
SELECT
SELECT
database_name = currentLine.databaseName
database_name = currentLine.databaseName
, datafile_type = type_desc
, datafile_type = type_desc
, num_of_bytes_read_persec = (currentLine.num_of_bytes_read - T1.num_of_bytes_read) / (DATEDIFF(SECOND,base
L
ine
D
ate,current
L
ine
D
ate))
, num_of_bytes_read_persec = (currentLine.num_of_bytes_read - T1.num_of_bytes_read) / (DATEDIFF(SECOND,base
l
ine
d
ate,current
l
ine
d
ate))
, num_of_bytes_written_persec = (currentLine.num_of_bytes_written - T1.num_of_bytes_written) / (DATEDIFF(SECOND,base
L
ine
D
ate,current
L
ine
D
ate))
, num_of_bytes_written_persec = (currentLine.num_of_bytes_written - T1.num_of_bytes_written) / (DATEDIFF(SECOND,base
l
ine
d
ate,current
l
ine
d
ate))
, num_of_reads_persec = (currentLine.num_of_reads - T1.num_of_reads) / (DATEDIFF(SECOND,base
L
ine
D
ate,current
L
ine
D
ate))
, num_of_reads_persec = (currentLine.num_of_reads - T1.num_of_reads) / (DATEDIFF(SECOND,base
l
ine
d
ate,current
l
ine
d
ate))
, num_of_writes_persec = (currentLine.num_of_writes - T1.num_of_writes) / (DATEDIFF(SECOND,base
L
ine
D
ate,current
L
ine
D
ate))
, num_of_writes_persec = (currentLine.num_of_writes - T1.num_of_writes) / (DATEDIFF(SECOND,base
l
ine
d
ate,current
l
ine
d
ate))
FROM currentLine
FROM currentLine
INNER JOIN #baseline T1 ON T1.databaseName = currentLine.databaseName
INNER JOIN #baseline T1 ON T1.databaseName = currentLine.databaseName
AND T1.physical_name = currentLine.physical_name
AND T1.physical_name = currentLine.physical_name
) as T
) as T
GROUP BY database_name, datafile_type
GROUP BY database_name, datafile_type
DECLARE @DynamicPivotQuery AS NVARCHAR(MAX)
DECLARE @DynamicPivotQuery AS NVARCHAR(MAX)
DECLARE @ColumnName AS NVARCHAR(MAX), @ColumnName2 AS NVARCHAR(MAX)
DECLARE @ColumnName AS NVARCHAR(MAX), @ColumnName2 AS NVARCHAR(MAX)
SELECT @ColumnName = ISNULL(@ColumnName + ',','') + QUOTENAME(database_name)
SELECT @ColumnName = ISNULL(@ColumnName + ',','') + QUOTENAME(database_name)
FROM (SELECT DISTINCT database_name FROM #baselinewritten) AS bl
FROM (SELECT DISTINCT database_name FROM #baselinewritten) AS bl
SELECT @ColumnName2 = ISNULL(@ColumnName2 + '+','') + QUOTENAME(database_name)
SELECT @ColumnName2 = ISNULL(@ColumnName2 + '+','') + QUOTENAME(database_name)
FROM (SELECT DISTINCT database_name FROM #baselinewritten) AS bl
FROM (SELECT DISTINCT database_name FROM #baselinewritten) AS bl
SET @DynamicPivotQuery = N'
SET @DynamicPivotQuery = N'
SELECT measurement = ''Log writes (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Log writes (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
...
@@ -699,9 +692,7 @@ FROM #baselinewritten
...
@@ -699,9 +692,7 @@ FROM #baselinewritten
WHERE datafile_type = ''LOG''
WHERE datafile_type = ''LOG''
) as V
) as V
PIVOT(SUM(num_of_bytes_written_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_bytes_written_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Rows writes (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Rows writes (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -710,9 +701,7 @@ FROM #baselinewritten
...
@@ -710,9 +701,7 @@ FROM #baselinewritten
WHERE datafile_type = ''ROWS''
WHERE datafile_type = ''ROWS''
) as V
) as V
PIVOT(SUM(num_of_bytes_written_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_bytes_written_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Log reads (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Log reads (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -721,9 +710,7 @@ FROM #baselinewritten
...
@@ -721,9 +710,7 @@ FROM #baselinewritten
WHERE datafile_type = ''LOG''
WHERE datafile_type = ''LOG''
) as V
) as V
PIVOT(SUM(num_of_bytes_read_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_bytes_read_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Rows reads (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Rows reads (bytes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -732,9 +719,7 @@ FROM #baselinewritten
...
@@ -732,9 +719,7 @@ FROM #baselinewritten
WHERE datafile_type = ''ROWS''
WHERE datafile_type = ''ROWS''
) as V
) as V
PIVOT(SUM(num_of_bytes_read_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_bytes_read_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Log (writes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Log (writes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -743,9 +728,7 @@ FROM #baselinewritten
...
@@ -743,9 +728,7 @@ FROM #baselinewritten
WHERE datafile_type = ''LOG''
WHERE datafile_type = ''LOG''
) as V
) as V
PIVOT(SUM(num_of_writes_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_writes_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Rows (writes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Rows (writes/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -754,9 +737,7 @@ FROM #baselinewritten
...
@@ -754,9 +737,7 @@ FROM #baselinewritten
WHERE datafile_type = ''ROWS''
WHERE datafile_type = ''ROWS''
) as V
) as V
PIVOT(SUM(num_of_writes_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTabl
PIVOT(SUM(num_of_writes_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTabl
UNION ALL
UNION ALL
SELECT measurement = ''Log (reads/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Log (reads/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -765,9 +746,7 @@ FROM #baselinewritten
...
@@ -765,9 +746,7 @@ FROM #baselinewritten
WHERE datafile_type = ''LOG''
WHERE datafile_type = ''LOG''
) as V
) as V
PIVOT(SUM(num_of_reads_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_reads_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
UNION ALL
UNION ALL
SELECT measurement = ''Rows (reads/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
SELECT measurement = ''Rows (reads/sec)'', servername = REPLACE(@@SERVERNAME, ''\'', '':''), type = ''Database IO''
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
, ' + @ColumnName + ', Total = ' + @ColumnName2 + ' FROM
(
(
...
@@ -777,7 +756,6 @@ WHERE datafile_type = ''ROWS''
...
@@ -777,7 +756,6 @@ WHERE datafile_type = ''ROWS''
) as V
) as V
PIVOT(SUM(num_of_reads_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
PIVOT(SUM(num_of_reads_persec) FOR database_name IN (' + @ColumnName + ')) AS PVTTable
'
'
EXEC sp_executesql @DynamicPivotQuery;
EXEC sp_executesql @DynamicPivotQuery;
`
`
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment