¿Existe una manera fácil de rastrear quién está ejecutando un informe determinado en SSRS 2005, y en qué momento están ejecutando ese informe? Tenemos aproximadamente 80 informes en nuestra implementación de SSRS, y estamos tratando de ver si hay alguno que podamos poner en libertad de manera segura. Si pudiéramos ver fácilmente qué informes no se están utilizando, eso nos ayudaría. ¿Algunas ideas?Uso del informe de seguimiento
Respuesta
Puede controlar el uso del informe utilizando los registros de ejecución. Compruebe esto http://technet.microsoft.com/en-us/library/aa964131(SQL.90).aspx
También puede ejecutar una consulta para buscar el uso del informe. Comprobar la respuesta de Maz en este enlace http://www.sqlservercentral.com/Forums/Topic433562-150-1.aspx
aplausos
siempre he encontrado los registros de informes son un poco difícil de usar. Reporting Services mantiene un registro de toda su actividad en una tabla en la base de datos de informes llamada ExecutionLog
Tengo un par de informes i utilizar esa consulta esta tabla, por lo que puede averiguar lo que se utilizan realmente los informes, y quién los usuarios más pesados son
Sé que esta pregunta es tan antigua que tiene bigotes, pero el siguiente código enumerará cada informe una vez con la última vez que se ejecutó. Le recomiendo que cree una nueva carpeta llamada "informes obsoletos" y mueva los informes antiguos allí en lugar de eliminarlos. Eso eliminará el desorden pero aún los mantendrá disponibles en caso de que el Departamento de Contabilidad venga detrás de usted por ese informe que obviamente necesita ejecutar una vez cada 3.26 años.
WITH RankedReports
AS
(SELECT ReportID,
TimeStart,
UserName,
RANK() OVER (PARTITION BY ReportID ORDER BY TimeStart DESC) AS iRank
FROM dbo.ExecutionLog t1
JOIN
dbo.Catalog t2
ON t1.ReportID = t2.ItemID
)
SELECT t2.Name AS ReportName,
t1.TimeStart,
t1.UserName,
t2.Path,
t1.ReportID
FROM RankedReports t1
JOIN
dbo.Catalog t2
ON t1.ReportID = t2.ItemID
WHERE t1.iRank = 1
ORDER BY t1.TimeStart;
He votado a favor de esto por referencia a los oscuros informes requeridos por el Departamento de Contabilidad ... ¡demasiadas veces me han avisado con menos de 24 horas de anticipación para volver a desarrollar algo de lo que nadie sabe nada! – Gallus
Hay algunos buenos consejos y consultas para generar informes sobre esto en la siguiente article.
Por ejemplo, si desea ver los informes más utilizados, se puede hacer lo siguiente:
SELECT COUNT(Name) AS ExecutionCount,
Name,
SUM(TimeDataRetrieval) AS TimeDataRetrievalSum,
SUM(TimeProcessing) AS TimeProcessingSum,
SUM(TimeRendering) AS TimeRenderingSum,
SUM(ByteCount) AS ByteCountSum,
SUM([RowCount]) AS RowCountSum
FROM (SELECT TimeStart,
Catalog.Type,
Catalog.Name,
TimeDataRetrieval,
TimeProcessing,
TimeRendering,
ByteCount,
[RowCount]
FROM Catalog
INNER JOIN
ExecutionLog
ON Catalog.ItemID = ExecutionLog.ReportID
WHERE Type = 2
) AS RE
GROUP BY Name
ORDER BY COUNT(Name) DESC,
Name;
Una cosa a tener en cuenta es que por defecto el registro de ejecución sólo mantendrá 2 meses el valor de los datos. Puede controlar este comportamiento con la propiedad del servidor ExecutionLogDaysKept
, consulte this technet article.
Esta SQL también le dará la fuente de datos, el usuario y el tipo de solicitud:
select row_number() over (order by LogEntryId) as Id, LogEntryId,
r.Name AS Report_Name, r.Path AS Report_Path, c2.Name AS Data_Source,
replace(c2.ConnectString,';Unicode=True','') as ConnectString,
SUBSTRING(r.Path, 2, LEN(r.Path) - LEN(r.Name) - 2) AS Folder_Path,
ex.UserName, ex.Format, ex.TimeProcessing, ex.TimeRendering, ex.[RowCount],
CAST (ex.TimeStart as date) AS TimeStart,
DATEPART (hour, ex.TimeStart) AS StartHour,
DATEPART (minute, ex.TimeStart) AS StartMinute,
case
when ex.RequestType = 0 then 'Interactive'
when ex.RequestType = 1 then 'Subscription'
when ex.RequestType = 2 then 'Refresh Cache'
else 'Unknown' end RequestType,
u.UserName as CreatedBy,
ex.Status
from ExecutionLogStorage ex (nolock) --exec log
join Catalog (nolock) r on ex.ReportID = r.ItemID and r.Type = 2 --report
join DataSource ds with (nolock) ON ds.ItemID = r.ItemID --report to connection link
join (select ItemID, Name, SUBSTRING(Content, CHARINDEX('<ConnectString>',Content) + 15, CHARINDEX('</ConnectString>',Content) - CHARINDEX('<ConnectString>',Content) - 15) AS ConnectString
from (select ItemID, Name, CONVERT(NVARCHAR(MAX),CONVERT(XML,CONVERT(VARBINARY(MAX),Content))) As Content
from Catalog with (nolock) where Type = 5) x
) c2 ON ds.Link = c2.ItemID -- connection
left join Users u on u.UserID = r.CreatedByID
- 1. iPhone - Seguimiento del uso de datos móviles
- 2. Uso de TDD para crear un informe
- 3. ¿Recrea el seguimiento de la pila con los números de línea del informe de errores del usuario en .net?
- 4. ¿Cómo realizo un seguimiento del progreso cuando uso Kanban?
- 5. Seguimiento del rendimiento de ORM
- 6. google analytics seguimiento del servidor
- 7. Seguimiento del centroCoordinación de MKMapView
- 8. Informe de uso de la batería de Android para desarrolladores
- 9. Progreso del informe en Directory.GetFiles
- 10. informe local vs servidor de informes en ASP .Net Informe de control del espectador
- 11. tiempo de seguimiento en Java: el uso de currentTimeMills()
- 12. Informe del parte de horas en FogBugz?
- 13. Depuración de depuración o lanzamiento del informe?
- 14. Reporting Services Tiempo de espera del informe
- 15. JasperReports: informe de llamadas del servlet
- 16. Uso de la memoria de seguimiento de un método
- 17. Nombre del informe del Administrador de informes de SSRS
- 18. Seguimiento de uso para aplicaciones de escritorio de Windows
- 19. Uso de la memoria de seguimiento de Xcode and Instruments
- 20. Seguimiento de uso de datos de iPhone/iPad
- 21. Seguimiento sobre el uso de VBA para enviar correos electrónicos
- 22. Rieles: seguimiento del ID de un usuario
- 23. Seguimiento del GPS eficiente de la energía
- 24. Android: seguimiento del número de objetos creados
- 25. Seguimiento automático del tiempo de desarrollo
- 26. raíz cuadrada de seguimiento del valor móvil
- 27. Seguimiento del uso de la CPU y la memoria por proceso
- 28. Seguimiento y seguimiento de código y datos
- 29. Desactivar seguimiento y seguimiento en apache
- 30. JMeter informe 95% línea
Esto es útil para la presentación de informes fácil y ligera, pero que se limitan a la historia que el servidor almacena (creo que 3 meses) y la seguridad en la base de datos del informe está limitada solo a ciertos usuarios autorizados. Aún así, es un primer paso fácil que lo ayudará a comenzar. –