Ask and answer questions about routing, shaping, and optimizing observability and security data.
Recently active
I’m looking to better understand how to monitor employee access to different applications via SSO. What approaches or best practices are others using?
After log configuration on port 1515 for some firewall logs, we observed logs are getting dropped and not all logs are forwarding to splunk.We observed udp drops on RHEL OS level, where we increased the max_mem_buffer size to 256 MB , but still same thing - Please check below output.But still we are getting buffer issue as provided in below output.[root@hostname ~]# cd /etc/sysctl.d/[root@hostname /etc/sysctl.d]# lltotal 4lrwxrwxrwx. 1 root root 14 Sep 12 16:14 99-sysctl.conf -> ../sysctl.conf-rw-r-----. 1 root root 187 Dec 11 16:08 99-udp-tuning.conf[root@hostname /etc/sysctl.d]# cat 99-udp-tuning.confnet.core.rmem_max=268435456net.core.wmem_max=268435456net.core.rmem_default=268435456net.core.wmem_default=268435456net.ipv4.udp_rmem_min=262144net.ipv4.udp_mem=65536 131072 262144[root@hostname /etc/sysctl.d]#[root@hostname /etc/sysctl.d]# netstat -usIcmpMsg: InType3: 141 InType8: 748254 InType13: 1 InType17: 3 OutType0: 748246 OutType3: 1321Udp: 4544841348 pack
Hello everyone! I’m quite new to Cribl, but I’ve spent about 10-20 hours so far reading the documentation. I’d like to send Windows event logs from on-prem servers and workstations to Azure Storage with the sort of parsing/normalisation that you’d have from Azure Monitor Agent (such as the SecurityEvent and WindowsEvent structures). This isn’t directly possible with Azure Monitor Agent and the AgentDirectToStore kind in Data Collection Rules (only Azure VMs are supported). I’m hoping that one of the Cribl products can help me with this. I looked at the Sentinel pack, and it appears to only support forwarding data to Sentinel. Is there an existing solution for mapping/normalisation/transformation (I’m not sure which term(s) are appropriate here: pipelines are so complicated!)? My environment has a lot of events across many log providers, and I’m also not sure what kind of magic that Azure Monitor Agent does to events (ie, is it just changing field names? Does it enrich the data, and if
Hello. I am a total newb with API integrations and was hoping for someone to help me set up an integration between Delinea and Cribl. I again am totally new at this and just dabbled at a couple of Cribl University courses but I need to get on the fast lane. Is there anyone that has done this already than can walk me through this configuration. If there is any additional details needed to clarify please let me know. So far in the Delinea platform I have followed their instructions and enabled the Syslog/CEF Logging option. As for the entries I had to enter into the field I’m not sure if I did this right.On the Cribl side I tried setting up a Syslog Source but not sure what to enter into the field either.Hope someone can assist.Thanks!
i have corelight events which has id.orig_h ,id.resp_h etc fields , but when i try to rename them using eval src_ip=id.orig_h… it doesnt work , the RENAME fucntion works though, I dont want to use rename because i dont want to lose original fields , i also cant use corelight pack because it is also using rename , how can i rename without losing original field???
how can i setup cribl hec source or the splunkhec destination to drop data older than 24hrs ?
We are planning to integrate SailPoint log with Cribl and send to Cribl lake. Is there any specific Cribl doc for the same? Or anyone has done this integration in the past?
I'm seeking assistance with connecting a Cribl Stream worker (running on a GCP VM) to our Cribl Cloud Leader. We are encountering a persistent connection handshake timeout error, despite extensive troubleshooting that indicates the network path through our corporate proxy is otherwise functional.Environment Details:Cribl Version: Latest (installed via install-worker.sh script) Worker OS: Ubuntu (GCP VM){"time":"2025-11-11T17:11:14.026Z","cid":"api","channel":"ProcessMetrics","level":"info","message":"stats","cpuPerc":0.69,"eluPerc":0.41,"mem":{"heap":108,"heapTotal":117,"ext":3,"rss":201,"buffers":0}}{"time":"2025-11-11T17:11:16.589Z","cid":"api","channel":"MetricsStore","level":"info","message":"active metrics","numMetrics":29}{"time":"2025-11-11T17:11:23.433Z","cid":"api","channel":"output:DistWorker","level":"warn","message":"sending is blocked","since":1762880150,"elapsed":932,"endpoint":{"host":"main-lucid-turcic-cir6n25.cribl.cloud","port":4200,"tls":true,"rejectUnauthorized":fal
I have verified that I can list the directories using the AWS CLI with the following command:aws s3 ls s3://cisco-managed-us-east-2/my_directory_prefix/I can pull the logs to my local directory using the following command:aws s3 sync s3://cisco-managed-us-east-2/my_directory_prefix/dnslogs/ C:\umbrella_logs\However, I am unable to pull them using the Umbrella S3 Collector in Cribl Stream locally hosted. Any ideas on what I could do differently?Here are my settings for the Cribl S3 collector with the personalized info redacted:{ "type": "collection", "ttl": "4h", "removeFields": [], "resumeOnBoot": false, "schedule": { "cronSchedule": "*/5 * * * *", "maxConcurrentRuns": 1, "skippable": true, "run": { "rescheduleDroppedTasks": true, "maxTaskReschedule": 1, "logLevel": "info", "jobTimeout": "0", "mode": "run", "timeRangeType": "relative", "timestampTimezone": "UTC", "timeWarning": {}, "expression": "true", "minTaskSize": "1MB", "maxTaskSize": "10MB" }, "enabled": false }, "streamtags": []
Hi all i am trying to upload few packs into stream leader using files but getting below sample error Error while installing Pack file cribl-cisco-asa-cleanup-1.1.15 (1).crbl in Group: Dev-OP: failed to install: ENOENT: no such file or directory, open '/opt/cribl/state/packs/cribl-cisco-asa-cleanup.LtY1yaM.tmp/data/lookups/asa_drops.csv'. what does this error suggest we have already uploaded few which got uploaded.
Hi Team,I’m working on an SNMP trap pipeline where:Input event has fields like trap_name and trap_varbind_apSysMgmtTaskSuspend.I have a Lookup table that maps:trap_name → varbindname → Output_attribute_value.After Lookup, I want to create a new field dynamically:Field name = value of Output_attribute_value (e.g., id)Field value = value from the field referenced by varbindname (e.g., trap_varbind_apSysMgmtTaskSuspend).I tried using Eval with:JavaScript[Output_attribute_value] = get(__payload, varbindname)Show more lines…but got Unallowed assignment operator error.Then I tried a Code function: JavaScriptconst targetField = event.Output_attribute_value;const sourceField = event.varbindname; if (targetField && sourceField && event[sourceField]) {event[targetField] = event[sourceField];}Show more linesBut the new field (id) still doesn’t appear in the final JSON.Questions:Is Code function the right approach for dynamic field names?How can I verify Lookup values before Code
Is there a way of directly integrating netskope with cribl using rest api’s without using s3 Buckets for transactional logs
We would like to stream data into RDBMS, but we don’t see the option rdbms destination. How can this be achieved?
HI all I am trying to create a pipeline where all syslog data will land and i want to filter the events from device i want based on a string in _raw filed like firewall or any other unique string.i have tried _raw.includes(‘Firewall’) or /Firewall/ though when i check in advanced mode in filter tab it matches the correct event but when i am checking it on a sample log i have built for testing it passes all the events regardless of filter.I know this can be done in routes itself but still would prefer if i could build a pipeline and more function inside it for each sources.
Hi Team,I am currently working on one POC. I have created a Rest Collector, In the discovery section I have configured Crowdstrike API 1 which returns the list of resource ids. Post that, I am using a format discover results section to read all the resource ids one after the other in JS. These ids are dynamically passed to the query parameter of the next API 2 in the collect section. From API 2 response, I need to fetch an attribute related to device id and pass this attribute in the query parameter of the final API 3 whose response will be sent to the Splunk HEC destination. I am currently not understanding how can I call this third API because Rest Collector doesn’t have multiple collect sections and when I moved my data to pipeline to implement a code function to call the API 3, looks like its a limitation, I was not able to call external API from code function and I could not see any other functions in cribl that can support this. Is it possible to chain multiple Rest collectors,
Hi everyone,Does any of you ever tried to use the Logging level known as silly? I’ve tried to use it for troubleshooting an issues on my env, but after less than 10 minutes, my three worker nodes were experiencing memory issues. One of my nodes went completely down, the other two remained with less than 1 GB of RAM (starting from 9 GB of free space in the beginning). I just want to know your experience/opinion on this, is it possible that my memory was not enough?
Hello,I’m using Cribl Cloud to pull JSON events from an Azure Event Hub and forward them to Splunk via HEC. Each incoming event contains a nested array field called records, for example:{ "records": [ { "FileName": "xx", "FileType": "xx", "NetworkMessageId": "xx", "RecipientEmailAddress": "xx", "RecipientObjectId": "xx", "ReportId": "xx", "SHA256": "xx", "SenderDisplayName": "xx", "SenderObjectId": "x", "SenderFromAddress": "x", "FileSize": x, "Timestamp": "xx", "TimeGenerated": "xx", "_ItemId": "xx", "TenantId": "xx", "_TimeReceived": "xx", "_Internal_WorkspaceResourceId": "xx", "Type": "xx" }, { "FileName": "xx", "FileType": "xx", "NetworkMessageId": "xx", "RecipientEmailAddress": "xx", "RecipientObjectId": "xx", "ReportId": "xx", "SHA256": "xx", "SenderDisplayName": "xx", "SenderObjectId": "x", "SenderFromAddress": "x", "Fil
HI all just wanted to confirm if CIDR ranges are supported in no proxy setting where i want to mention CIDR range of leader node in worker node settings instead of directly providing leader node IP.Is there any additional settings needed to make this work?
As the title says, I’m looking to create and update a lookup table based on incoming events, somewhat similar to the outputlookup function in splunk. Is there any way to update or create a table based on fields from events passing through a pipeline?
Looking for a configuration example for sending webhook notifications to Teams channel.
hello,i need options on how to enrich data coming from zabbix as a source on cribl stream before it reaches the destination by API or Http requestthe data is on database i need to call the database by API to fetch the data using fields in the data payload from zabbix and enrich the data received from zabbix then forward it to destinationnote : i want to get the data on fly and the API call will use attributed from the data payload this is the URL that i want to use and will take the massagegroup and the application value from the data payload to call the needed data to be enrichedhttp://IP:25050/3i_service.php?MESSAGEGROUP=X&APPLIKATION=Yi tried by code on the pipeline to do httprequest but it didn't work
Had a situation where the automatic upgrade was not working, so had to manually upgrade.From the logs it was trying to download ARM version not X64 version.Fortunately managed to figure out the correct weblink by changing the file name slightly: https://cdn.cribl.io/dl/4.10.1/cribl-4.10.1-45136dbb-linux-x64.tgz.Are these links listed anywhere on the cribl website, or how would we manually upgrade?
Hello,I noticed a strange thing maybey anyone can explain.I have 3 syslog sources: syslog:514: ,syslog:51402: and syslog:51403:Three routes for these sources, each with a different pipeline attached. The order off the routes are 514 then 51402 and at last 51403.The filter in de routes are __inputId.startsWith('syslog:514:') && __srcIpPort.includes('10.10.1.112')__inputId.startsWith('syslog:51402:') && __srcIpPort.includes('10.10.1.112')__inputId.startsWith('syslog:51403:')&& __srcIpPort.includes('10.10.1.112')(same host with different syslog outputs)In this order the 514 port gets a load off events, the 51402 lesser and teh 51403 nothing. That surpised me because when a check the source side i can capture 51403 events from this sourceip.For test i moved the 514 route after the 51403 route. Just a feeling. but what??.. the 51403 gets suddenly l the events it was missing. And here it gets strange. Just as if the 514 filter takes al the events from the 51403. But
HiI setup a worker node on premise by running the script captured from cribl leader cloud. I enabled UI access for worker node. I can open the link in browser but what will be the credentials for it ?Thanks
Hello everyone,I have the following problem. I'm designing a distributed deployment. I have to create an environment for data reduction but before that I need to send the data to a blob storage, for compliance reason, as you can imagine. Now, all of these is achieved but I have some doubts. When I use the Azure blob storage as only destination, all the 100% of the data goes in there but, the Monitoring Page, is telling me that the data that comes in are the same as the data that goes out (sometimes, the data that goes out are even more), even with compression enable. As said, I have the g-zip compression enabled on the Azure Destination page. I've checked the storage and I found out that the data are really compressed. So, my point is the following: when I try to estimates the possible number of workers and their capabilities, should I trust the monitoring page and consider DATA IN = DATA OUT (since the data is not processed by any pipeline at all) or I can consider the quantity of byt
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.