Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Gepubliceerd: november 2016
Is van toepassing op: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016
Met een listener kunt u de logboekuitvoer naar bestanden, het gebeurtenislogboek of andere bronnen te sturen. In de vorige versie van Unified Service Desk kon u alleen de standaardlisteners gebruiken om controles, diagnoses en traceerlogboeken in Unified Service Desk te schrijven.
Met Unified Service Desk 2.0 kunt u aangepaste listeners configureren om controles, diagnoses en traceringgegevens in logboeken vast te leggen. Geef een aangepaste listener op met behulp van het nieuwe type gehost besturingselement met de naam Gehost besturingselement voor listener dat een verwijzing bevat naar de assembly (.dll-bestand) met daarin de code van uw aangepaste listener.
In dit onderwerp
Wat komt er kijken bij het maken van aangepaste listeners?
Uw aangepaste listener definiëren voor Unified Service Desk
Het distribueren van uw voorbeeldcode voorbereiden
Maak exemplaren van het gehoste besturingselement listener om uw code van de aangepaste listener te gebruiken.
Volgende stappen voor beheerder
Wat komt er kijken bij het maken van aangepaste listeners?
Om aangepaste listeners in Unified Service Desk te maken moeten ontwikkelaars en beheerders samenwerken. In de volgende tabel vindt u een overzicht van het proces.
Stap |
Wie doet het? |
Opdracht |
Zie hier |
|---|---|---|---|
1 |
Ontwikkelaar |
Schrijf code voor uw aangepaste listener. |
Uw aangepaste listener definiëren voor Unified Service Desk |
2 |
Ontwikkelaar |
Comprimeer assembly in een .zip-bestand om een aanpassingsbestand voor Unified Service Desk te maken. |
Het distribueren van uw voorbeeldcode voorbereiden |
3 |
Ontwikkelaar/Beheerder |
Maak exemplaren van het Gehoste besturingselement voor listener om de code van de aangepaste listener te gebruiken. |
Maak exemplaren van het gehoste besturingselement listener om uw code van de aangepaste listener te gebruiken. |
4 |
Beheerder |
Maak exemplaren van de Controle- en diagnose-instellingen-record om uw controle-, diagnose- of traceerlogboekinformatie te configureren. |
TechNet: Controle en diagnostiek configureren in Unified Service Desk |
5 |
Beheerder |
Maak Aangepaste bestanden en voeg het .zip-bestand toe dat door de ontwikkelaar in stap #2 is gemaakt. |
TechNet: Aangepaste gehoste besturingselementen distribueren via aanpassingsbestanden |
6 |
Beheerder |
Voeg de record Aangepaste bestanden aan het juiste exemplaar van de entiteit Configuratie toe. |
TechNet: Controleren en diagnostiek aan een configuratie koppelen |
Uw aangepaste listener definiëren voor Unified Service Desk
U kunt de code van uw aangepaste listener voor controleren, diagnoses en traceringslogboekregistratie combineren tot één assembly of tot verschillende assembly´s. De klasse die uw listenercode bevat moet worden afgeleid uit:
IAuditService voor controlelogboeken
ILogging voor diagnoselogboeken
TraceListener voor traceringslogboeken
Notitie
Maak een notitie van de naamruimte en de klassenamen in uw listenercode. U hebt deze nodig om exemplaren van het gehost besturingselement listener te maken om naar uw aangepaste code te verwijzen.
Aangepaste listener voor controlelogboeken
In de volgende voorbeeldcode ziet u hoe u een aangepaste listener kunt maken die controlegegevens naar het bestand USDAudit.log in de map C:\USDLogs schrijft.
using Microsoft.Uii.AifServices;
using Microsoft.Uii.Common.Entities;
using Microsoft.Uii.Common.Logging;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SampleCustomUSDListener
{
public class CustomUSDAuditListener : IAuditService
{
public void SaveAudit(IEnumerable<Microsoft.Uii.Common.Entities.LogData> logCache)
{
LogToFile(logCache);
}
private void LogToFile(IEnumerable<LogData> logCache)
{
string filename = Path.GetPathRoot(Environment.SystemDirectory) + "USDLogs\\USDAudit.log";
foreach (var item in logCache)
{
try
{
File.AppendAllText(filename, item.GetLogData());
}
catch (Exception ex)
{
Logging.Error("USD",ex.StackTrace);
}
}
}
}
}
Aangepaste listener voor diagnoselogboeken
In de volgende voorbeeldcode ziet u hoe u een aangepaste listener kunt maken die diagnosegegevens naar het bestand USDDiagnostics.log in de map C:\USDLogs schrijft.
using Microsoft.Uii.Common.Logging;
using Microsoft.Uii.Common.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Configuration;
using System.Threading.Tasks;
namespace SampleCustomUSDListener
{
class CustomUSDDiagnosticListener : ILogging
{
string filename = Path.GetPathRoot(Environment.SystemDirectory) + "USDLogs\\USDDiagnostics.log";
public void Error(string applicationName, string message, string advanced)
{
File.AppendAllText(filename, "\nError is logged\n" + "\nApplication Name:\n" + applicationName + "\nMessage:\n" + message + "\nAdvanced:\n" + advanced);
}
public void Information(string applicationName, string message)
{
File.AppendAllText(filename, "\nInformation is logged\n" + "\nApplication Name:\n" + applicationName + "\nMessage:\n" + message);
}
public void Initialize(string name, System.Collections.Specialized.NameValueCollection configValue)
{
//Not needed
}
public bool ShowErrors
{
get
{
throw new NotImplementedException();
}
set
{
throw new NotImplementedException();
}
}
public string Tag
{
get
{
throw new NotImplementedException();
}
set
{
throw new NotImplementedException();
}
}
public void Trace(string applicationName, string message)
{
File.AppendAllText(filename, "\nVerbose is logged\n" + "\nApplication Name:\n" + applicationName + "\nMessage:\n" + message);
}
public void Warn(string applicationName, string message)
{
File.AppendAllText(filename, "\nWarning is logged\n" + "\nApplication Name:\n" + applicationName + "\nMessage:\n" + message);
}
}
}
Aangepaste listener voor traceringslogboeken
In de volgende voorbeeldcode ziet u hoe u een aangepaste listener kunt maken die traceringsgegevens naar het bestand USDTraces.log in de map C:\USDLogs schrijft.
using System;
using System.Diagnostics;
using System.IO;
namespace SampleCustomUSDListener
{
class CustomUSDTraceListener : TraceListener
{
string filename = Path.GetPathRoot(Environment.SystemDirectory) + "USDLogs\\USDTraces.log";
public override void Write(string message)
{
File.AppendAllText(filename, message);
}
public override void WriteLine(string message)
{
File.AppendAllText(filename, message);
}
}
}
Het distribueren van uw voorbeeldcode voorbereiden
Nadat u de code van de aangepaste listener in een assemblybestand (.dll) hebt gebouwd, moet u samenwerken met uw beheerder om de code te distribueren naar de clientcomputers zodat deze uw aangepaste listeners kunnen gebruiken. Om uw aangepaste bestanden te kunnen distribueren, comprimeert u de bestanden samen met een [Content_Types].xml-bestand in een .zip-bestand en geeft u het .zip-bestand aan uw beheerder die het aan een Customization Files-record koppelt. Zie Volgende stappen voor beheerder.
Het bestand [Content_Types].xml levert informatie over het MIME-type van de bestandstype-extensies die in het .zip-bestand zijn opgenomen. Doorgaans zijn de bestandstypen: .config, .dll, .exe en .xml. U kunt echter een willekeurig bestandstype opnemen dat door Windows wordt ondersteunt in het bestand [Content_Types].xml en in het bestand zip.
Hier volgt een [Content_Types].xml-voorbeeldbestand met weergegeven bestandstypen die gewoonlijk worden gebruikt voor het aanpassen van Unified Service Desk:
<?xml version="1.0" encoding="utf-8"?>
<Types xmlns="https://schemas.openxmlformats.org/package/2006/content-types">
<Default Extension="config" ContentType="application/octet-stream" />
<Default Extension="dll" ContentType="application/octet-stream" />
<Default Extension="exe" ContentType="application/octet-stream" />
<Default Extension="xml" ContentType="application/octet-stream" />
</Types>
Maak exemplaren van het gehoste besturingselement listener om uw code van de aangepaste listener te gebruiken.
Met het nieuwe gehoste besturingselement listener in Unified Service Desk kunt u verwijzen naar uw code voor de aangepaste listener en deze gebruiken voor het vastleggen van gegevens in logboeken overeenkomstig uw code. In het gebied Assemby-informatie in het scherm van het nieuwe gehoste besturingselement, kunt u gegevens over de assembly opgeven waar u het gehoste besturingselement naar wilt laten verwijzen. Geef uw assemblynaam (.dll) op in het veld en Assembly-URI*<Assemblynaam>.<Klassenaam>* in het veld Assemblytype. De <Klassenaam> moet de klasse zijn die uw code bevat.
.jpeg)
Bijvoorbeeld, als we de voorbeeldcode voor aangepaste listeners die eerder in dit onderwerp aan de orde zijn geweest als uitgangspunt nemen, en ervan uitgaan dat alle voorbeeldcodes in één assembly met de naam SampleCustomUSDListener.dll zijn gecompileerd, moet u een record gehost besturingselementrecord listener voor zowel controleren, diagnose en tracering maken, met behulp van de volgende waarden in de velden Assembly-URI en Assemblytype.
Controle |
Diagnose |
Tracering |
|---|---|---|
|
|
|
Sla de records gehost besturingselement voor listener op.
Volgende stappen voor beheerder
Als beheerder moet u nu de volgende twee dingen doen om de code van de aangepaste listener in uw organisatie te gebruiken:
Maak records Controle- en diagnose-instellingen en koppel er het juiste record gehost besturingselement listener aan.Meer informatie:TechNet: Controle en diagnostiek configureren in Unified Service Desk
Gebruik het ZIP-bestand om een record Aanpassingsbestanden te maken en voeg dit vervolgens toe aan de juiste record Configuratie zodat de assembly naar de clientcomputers kan worden gedistribueerd als deze zich aanmelden bij de Dynamics 365-server met de Unified Service Desk-client.Meer informatie:TechNet: Aangepaste gehoste besturingselementen distribueren via aanpassingsbestanden
Zie ook
Volledige servicedesk uitbreiden
Unified Service Desk 2.0
© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht