martes, 26 de abril de 2016

Como conocer los usuarios que estan conectados el día de hoy en SharePoint 2013

La única forma que encontrado de lado de SharePoint es ejecutando un comando de T-SQL hacia la base de datos de estádisticas con WSS_Logging o a veces lo nombran como WSS_UsageAplication.   Esta tiene diferentes vistas y funciones que nos pueden proveer información ya relacionada para facilitarnos la consulta.

El tema es que tienes que tener configurado la colección de datos de uso y salud.   Para ello ve al Central Adminsitration, a Montoring y luego Configure usage and health data collection.




Luego navegue un poco y espere por lo menos un día para que actualice la base de datos.  Si desea ver información más actualizada puede ejecutar manualmente los siguientes trabajos de SharePoint Timer Service.





Ahora el  query t-sql para ver la información.  


DECLARE @StartTime DATETIME     = GETDATE() ,
     @EndTime DATETIME     = DATEADD(day, 1, GETDATE());
      SELECT  UserLogin AS [User] ,
        COUNT(RowId) AS Hits ,
        MAX(LogTime) AS LastAccessTime

        FROM    [dbo].[RequestUsage]
       WHERE   PartitionId IN (
          SELECT  PartitionId
          FROM    dbo.fn_PartitionIdRangeMonthly(@StartTime, @EndTime) )
          AND LogTime BETWEEN @StartTime AND @EndTime
          AND UserLogin IS NOT NULL
          AND DATALENGTH(UserLogin) > 0
      GROUP BY UserLogIn


Y eso es todo amigos,

Juan Manuel Herrera

No hay comentarios.: