Skip to content

Developing Custom Cribl Stream Functions – From Requirements to Data Magic

Greetings, data wizards and tech conjurers! Today, we’re about to unravel the mystical journey of developing a custom Cribl Stream function that will turn your data woes into pure enchantment. So grab your virtual wands and let’s get spellbinding!

Gold Custom Cribl Stream Function Dragon giving ominous warning
Careful there be dragons here

Before we get into the weeds though, lets take a moment to ask for forgiveness on what you’re about to see/read. Yes, ChatGPT wrote this article (mostly); and it’s only appropriate because that’s what we’re going to do! We’re going to add ChatGPT to a Custom Cribl Stream Function! IMPORTANT NOTE: Adding something that responds as slowly as a public API call to your pipeline can be a silly venture into futility. In most use cases you’ll want to enrich and transform data in your pipeline as fast as possible. Not only that, but there is a max async timeout limit of 10000ms for all pipelines in current versions of Cribl Stream that will really make your head spin if you exceed it! Oh and by the way, we definitely did all of that and more… Suffice to say…

We do not recommend doing what we did with this custom cribl stream function!

So lets dive in and what the short clip here. It’s fast and with audio so be aware that you can watch on mute and the transcript is below the video player.



Screen 1: “Custom Cribl Stream Functions” materializes.

Screen 2: “Gathering Requirements” manifests.

Screen 3: Watch the magic unfold as we infuse requirements with the precision of a master spellcaster.

Before we dive into the spellbook of data transformation, let’s gather our requirements like a wise alchemist collecting magical ingredients. Imagine you’re concocting a potion—only this time, it’s for refining your data into pure gold! So, roll up your sleeves, and let’s scribble those requirements like a wizard jotting down an intricate spell.

Here’s what we came up with:

  • Connect to api via java asynchronous promise
  • Select the model to be used
  • Configure the system, assistant, and prompter prompts
  • Include data from the pipeline
  • Sampling ability (could be handled other ways, but might be nice to have)

Screen 4: “Coding” appears with a flourish.

Ah, coding—the spellcasting of the tech realm! With your gathered ingredients in hand, it’s time to brew your data elixir. Think of it as crafting a bewitching melody—one that transforms your raw data into a symphony of insights. With Cribl Stream at your command, you’re like a conductor guiding your data orchestra to harmonic perfection.

Screen 5: Behold the enchantment as we weave code like a sorcerer conjuring spells under a moonlit sky.

Screen 6: “Profit” shimmers into view.

Let’s talk about the sweet sound of savings. Remember that treasure at the end of the rainbow? Well, here it is! As your data gets polished and refined, you’ll discover a treasure trove of savings and efficiencies. It’s like stumbling upon the fabled pot of gold—only this time, it’s real, and it’s all thanks to your data wizardry!

Screen 7: Witness the data transformation unfold like a grand illusion, leaving you in awe of the power of Cribl Stream.

Screen 8: “Got a unique use case for Cribl? Let’s chat” twinkles.

But wait, the tale doesn’t end here! Just like a never-ending quest for magical artifacts, your data journey might have unique twists. Have a scenario that’s as rare as a unicorn-goat? We’re here to help! Our team is as approachable as a friendly dragon (minus the fire-breathing, of course), and we’re eager to assist you in your data adventures.

And there you have it, fellow data wizards! From requirements to the symphony of savings, custom Cribl Stream functions can be your wand for crafting data magic that’s as impressive as turning lead into gold. So wave that wand—err, I mean, click those buttons—and let the data enchantment begin!

Continue the conversation with us on LinkedIn or Contact Us today to learn more.