Het geven van trainingen vind ik een mooi onderdeel van mijn baan. Het is even uit de dagelijkse routine stappen om zo cursisten kennis bij te brengen over mijn vakgebied. Super leuk om over je werk te mogen vertellen, nieuwe mensen te ontmoeten en hen te helpen bij de uitdagingen die binnen hun bedrijf spelen. In deze blog deel ik graag mijn ervaringen met het geven van Splunk-trainingen, inclusief de voorbereiding, het ontwikkelen van oefenopdrachten met AI en natuurlijk het verzorgen van de training zelf.
Voorbereiding Splunk training
Bij CINQ bieden wij trainingen aan op alle niveaus van Splunk. Daarbij leveren wij maatwerk om zo op de behoeften van onze klanten in te spelen. Zodra CINQ een aanvraag ontvangt van onze partner of rechtstreeks van een klant, beginnen wij met het afstemmen van de training op hun specifieke wensen. Hierbij kijken wij niet alleen naar praktische zaken zoals datum en locatie, maar vooral naar de vraag van de klant: wie zijn de deelnemers en wat willen zij precies leren?
Na het eerste contact starten wij met de voorbereiding van de training. De trainingen zijn meestal verdeeld over 2 tot 3 trainingsdagen, met steeds een week er tussen. Op deze manier krijgen de cursisten de kans om tussen de trainingsdagen door oefeningen te maken en worden zij niet in één dag overladen met theorie. De training zelf bestaat uit een combinatie van theorie en praktijk. Zo leggen wij bijvoorbeeld een Splunk-commando uit en laten de cursisten vervolgens een bijpassende oefenopdracht uitvoeren. Als de training op locatie bij de klant plaatsvindt, kunnen wij in overeenstemming (NDA) ook gebruikmaken van klantdata, hoewel werken met gegenereerde testdata altijd een mogelijkheid is.
Het maken van oefenopdrachten met AI:
Vaak gebruik ik AI-chatbots voor het maken van de oefenopdrachten. Dit bespaart tijd en biedt de mogelijkheid om een test set te personaliseren voor een specifiek bedrijf of branche. De opdrachten worden hierdoor begrijpelijker en leuker voor de cursisten.
Voor mijn laatste training maakte ik gebruik van ChatGPT, maar Google Gemini of Microsoft CoPilot zouden ook gebruikt kunnen worden. Als voorbeeld moest ik het timechart- en timewrap-commando uitleggen aan een groep die werkzaam is voor een luchthaven. Uiteindelijk kwam ik tot de volgende invoer:
“Maak met SPL en het gentimes commando een testset aan data. Bij gentimes als start-365 als end=0 increment=1d. Doe vervolgens eval _time=starttime. Vervolgens maak met eval statements een ticket_price aan tussen de 200-205 waarbij de ticket_price langzaam afneemt, en geef gebruikmakend van random() 3 airlines. Kies daarna met een where clause 1 luchthaven, vervolgens maak een timechart met de gemiddelde ticket_price per maand en een timewrap per q.”
ChatGPT is helaas geen SplunkGPT*. Het heeft hulp nodig om een werkende Splunk query te fabriceren. Zo herkent het niet alle Splunk commando's of maakt het verkeerde aannames bij het schrijven ervan, waardoor de geleverde SPL code niet werkt. Daarom geef ik in bovenstaand voorbeeld zeer specifieke instructies, door de vraag zo gedetailleerd mogelijk te formuleren. Zo schrijf ik commando’s uit en geef ik in stappen de volgorde van de commando’s weer. De output van ChatGPT is een query die ik bijna rechtstreeks in Splunk kan gebruiken.
Waar ChatGPT de aanname doet dat comments met een # moeten beginnen is dat bij splunk met 3 backtics. Na deze aanpassing zal de query correct werken.
Door een deel van deze query aan de cursisten te verstrekken, kunnen gebruikers eerst een luchtvaartmaatschappij kiezen, vervolgens een timechart maken en deze uiteindelijk aanpassen naar een timewrap per kwartaal. Daarna kunnen ze onderzoeken wat er is gebeurd met de ticketprijzen in het afgelopen jaar.
*Bovenstaande is gemaakt met de gratis versie van ChatGPT gebaseerd op model 3.5. Met de betaalde versie van ChatGPT, 4.0 kun je ook custom GPT’s gebruiken. Dat zijn Chat GPT extensies, die zijn toegespitst op 1 specifieke functionaliteit. Zo zijn er een aantal Splunk GPT’s te vinden op de markt. Mijn ervaring is dat deze ietwat betere resultaten leveren dan de gratis variant, maar zeker niet perfect werken. De tip blijft om je vraag zo exact mogelijk te formuleren, om zo ruimte voor interpretatie en inbreng door chatGPT te verkleinen.
De training zelf:
Met het slidedeck en de testopdrachten gereed, is het tijd om de training te geven. Voordat de training begint ben ik al aanwezig op locatie om alles gereed te maken. Ik heet de cursisten één voor één welkom en tijdens een gezamenlijke kennismaking vraag ik de cursisten kort te vertellen wie zij zijn en wat zij persoonlijk uit de training willen halen. Zo kan ik een laatste afstemming doen en inschatten waar tijdens de training meer of minder aandacht aan besteed moet worden.
Op de eerste dag, met name de ochtend van de training, ligt de focus meer op de theorie. Aan het einde van de dag geef ik vaak een huiswerkopdracht mee om de theorie in de praktijk te brengen. Daarnaast vraag ik de cursisten om na te denken over hun verwachtingen voor de volgende dagen. Tussen de trainingsdagen door bel ik meestal met onze contactpersoon om feedback te verzamelen die ik kan gebruiken voor de laatste trainingsdagen.
Op de tweede en/of laatste dag wordt er meer aandacht besteed aan praktische toepassingen. Vaak staat er een praktijkopdracht op het programma en is er extra ruimte voor vragen en specifieke situaties van de klant.
We sluiten gezamenlijk af met een evaluatie en de cursisten ontvangen een certificaat van deelname.
Komende maand schrijf ik nog een blog over hoe je Splunk Dashboards kan maken met ChatGPT en hoe je bestaande classic XML-dashboards mooier kan maken. Houdt de blogs van CINQ dan ook in de gaten.