Ausnutzung unserer Citrix-Farm mit Grafana

Gut, Ich hinterlasse Ihnen einen Beitrag, in dem wir sehen, wie wir die von Citrix in seinen Datenbanken gespeicherten Informationen nutzen können. Wie ich mir vorstelle, wissen Sie, Citrix speichert in einer Datenbank die Aufzeichnungen darüber, was auf unserer Citrix-Farm passiert, Aber das ist wahr, So viel wie Sie bezahlen, so viel wie Sie bekommen, Das heißt, was von der Edition abhängt, die wir haben, speichert Citrix Informationen in diesen Datenbanken für 1 Woche, oder 1 Monat oder 1 Jahr. Hier werden wir sehen, wie wir unsere eigenen Paneele mit Grafana und ohne Datumsbegrenzung herstellen können!

Was ich gesagt habe, in diesem Beitrag sehen wir nur ein Beispiel mit den User Sessions, wo wir eine Historie darüber haben werden, wer was wann geöffnet hat, aber natürlich können wir auch die Leistung von Citrix-Servern visualisieren, Der Delivery Controller, VDAs… Sowie Kunden, Welche Version gibt es?, Was SO…

Wenn Sie also wissen, In der Regel speichert Citrix in 3 verschiedene Datenbanken die Informationen, die Sie uns auf Ihren Studio- oder Director-Konsolen anzeigen, Die Idee ist, eine vierte Datenbank zu schaffen, in der wir speichern, was uns interessiert, und dass die DB unsere historische, die dasjenige sein wird, das Grafana konsultiert, Und so verlieren wir nicht die Geschichte und haben viel mehr Informationen und vor allem personalisierte Informationen für uns, nur mit dem, was wir sehen wollen.

Bevor Sie beginnen, wir müssen diese vierte DB erstellen lassen, Wir können es über SQL Server Management Studio tun (SSMS) mit dem folgenden Code:

Erstellen der Tabelle LogCitrix.dbo.Sessions (FullName varchar(255),StartDatum DATETIME,Enddatum DATETIME,SessionIdleTime DATETIME,ConnectedViaIPAddress varchar(255),Verbindungs-ID INT);


Folgendes, Wir benötigen eine .BAT Datei, die wir so oft ausführen, wie wir möchten, um sie in dieser Datenbank zu speichern (Unsere) Informationen und verwerten sie dann mit Grafana. Diese BVT wird normalerweise mit dem Windows-Taskplaner ausgeführt. Nennen wir es zum Beispiel LogCitrix.bat und das wäre sein Inhalt:

@echo aus sqlcmd -S NOMBRE_SERVIDOR_DELIVERY_CONTROLLER -i C:\LogCitrixsessiones.sql -o C:\LogCitrixsessiones.txt


Wir werden auch die . SQL, das die Anweisungen hat, welchen Inhalt und aus welchen Tabellen wir bringen werden, In meinem Beispiel, Dieser wird sessiones.sql genannt, und das wäre sein Inhalt:

Einfügen: Wählen Sie in logcitrix.dbo.sessions die Option U.FullName aus., S.Startdatum, S.Enddatum, S.SessionIdleTime, C.ConnectedViaIPAdkleid, C.id VON [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Sitzung] S, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Benutzer] Oder, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Verbindung] c wobei s.userid=U.id und s.currentconnectionid=c.id;

mit sessionsCTE AS
(
AUSWÄHLEN *, ROW_NUMBER()ÜBER(PARTITION BY Connectionid ORDER BY Connectionid) AS Zeilennummer FROM logcitrix.dbo.sessions
)
DELETE FROM sessionsCTE WHERE RowNumber > 1

Dies ist es, was wir nach dem vorherigen Beispiel haben werden, Wow, was ich gesagt habe, Dies ist eine Tabelle nur für Benutzersitzungen, Wo wir speichern werden, wer wann eine Verbindung hergestellt hat, wann Sie sich abgemeldet haben und von wo aus Sie sich angemeldet haben. Ich sag es dir, Dies hängt von den Daten ab, die Sie importieren möchten, Sie müssen Daten aus anderen Tabellen mitbringen, dass ich es jetzt nicht anziehe, um dein Leben 😉 nicht zu verkomplizieren

Citrix-Sitzungsverlauf,

Und nichts, mit bereits gespeicherten Daten, wie gewöhnlich, Wir müssen eine neue DataSource oder Datenquelle für den betreffenden SQL-Server und die Citrix-Datenbank erstellen, die wir gerade erstellt haben, damit wir Ihnen Fragen stellen können. Um die Tabellenanzeige durchzuführen, Persönlich benutze ich das Panel mehr ‘Gruppe Datatable‘ von Brian Gann (Sie werden im Link sehen, wie einfach diese Art von Panel zu installieren ist), Auf diese Weise können wir Filter herstellen, Durchsuchungen…

Und es wird so einfach sein wie die Eingabe dieser Abfrage:

AUSWÄHLEN [Vollständiger Name] AS 'NOMBRE',
[Startdatum] AS 'HORA INICIO',

Fall, wenn [SessionIdleTime] Ist dann null [Enddatum]
wann [Landen] IS nicht null ist und [SessionIdleTime] IS ist dann nicht null [SessionIdleTime]
end as 'HORA FIN',
Fall, wenn [SessionIdleTime] Ist null und [Enddatum] IS not null then 'CIERRE USUARIO'
when [SessionIdleTime] Ist nicht null und [Enddatum] IST nicht null und DATEDIFF(Stunde,[SessionIdleTime],[Landen])&AMPERE;AMPERE;Gt;=2 then 'CIERRE POR INACTIVIDAD'
when [SessionIdleTime] Ist nicht null und [Enddatum] IST nicht null und DATEDIFF(Stunde,[SessionIdleTime],[Landen])&AMPERE;AMPERE;Lt;2 then 'CIERRE USUARIO'
end as 'TIPO CIERRE',

--[SessionIdleTime],

-- [Enddatum],

Fall, wenn [ConnectedViaIPAdkleid] ='DIRECCION_IP_NETSCALER_GATEWAY' then 'FUERA OFICINA'
else 'OFICINA'
end as 'CONEXION DESDE'--,

-- [ConnectedViaIPAdkleid],
-- [Verbindungs-ID]
VON [ProtokollCitrix].[Bod].[Sitzungen]
wo [Vollständiger Name] &AMPERE;AMPERE;Lt;&AMPERE;AMPERE;Gt; 'Rubén Tercero García' and [Startdatum]&AMPERE;AMPERE;Gt;'2019-09-23'
order by StartDate desc

Anmeldezeiten,

Wir wissen, dass die Anmeldezeit in Citrix-Umgebungen sehr wichtig ist, Wenn wir wollen, Wir können visualisieren, wie lange es dauert, bis Benutzer Sitzungen öffnen (Und wann), in diesem Fall, warum wir UPM verwenden und nicht FSLogix (dass das Problem der Roaming-Profile verschwindet). Und das, anstatt diese historische Datenbank zu konsultieren, Wir können Citrix-Produktionsdatenbanken direkt anfordern, in diesem Fall auf Monitoring (Also denken Sie daran, dass dafür eine weitere DataSource benötigt wird, die in Grafana erstellt wurde, gegen die Produktions-DB). Vorbereitung mit diesem Select:

WÄHLEN SIE $__timeEpoch(S.Startdatum),
S.logonduration als Wert,
U.FullName als Metrik FROM
[NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Sitzung] S, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Benutzer] U WO $__timeFilter(S.Startdatum) und s.userid=U.id ORDER BY S.Startdate ASC

Apps öffnen,

Als letztes Beispiel hinterlasse ich Ihnen eine Tabelle, in der wir die Apps sehen können, die Benutzer öffnen, So haben wir eine Vorstellung davon, was auf unserem Hof vor sich geht. Wir erstellen ein grafisches Panel und in diesem Fall hätten wir es durch die folgende Auswahl:

WÄHLEN SIE $__timeEpoch(Künstliche Intelligenz. Startdatum),
1 als Wert,
--Tata als Metrik,
A.PublishedName als Metrik FROM
[NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Sitzung] S, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Benutzer] Oder, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Verbindung] C, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Anwendung] An, [NOMBRE_BD_CITRIX_MONITORING].[Daten überwachen].[Anwendungsinstanz] KI, WO __timeFilter $(S.Startdatum) und s.userid=U.id und S.currentconnectionid=c.id und AI.sessionkey=S.sessionkey und A.id=AI.applicationid ORDER BY S.Startdate ASC

Dieser Beitrag hat die Idee, dass er das hat, dass Sie wissen, dass jede Datenbank, die wir in unseren Organisationen haben, ausgenutzt werden kann, und visualisieren Sie Ihre Daten, Andere Beispiele, die ich habe, sind, dass, Quesito Visualisierungen, welche Versionen Citrix Receiver/Citrix Workspace Benutzer haben… Oder wenn Sie ein ERP haben, Das gleiche, Nutzen Sie es und visualisieren Sie Navision-Daten, SAFT… oder wenn Sie ein Zeitmanagement haben, Ich bin mir sicher, dass Ihre Chefs gerne Echtzeitberichte mit den Daten hätten, die ihnen wichtig sind! Denken Sie daran, dass Sie auch später Exportieren Sie dies in ein PDF schön und per E-Mail nach Zeitplan an die Empfänger gesendet, an denen wir interessiert sind.

Ich hoffe, Sie waren interessiert!

Empfohlene Beiträge

Verfasser

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Zögern Sie nicht, mich zu kontaktieren, Ich werde versuchen, dir zu helfen, wann immer ich kann, Teilen ist Leben ;) . Genießen Sie Dokumente!!!