graylog2-server icon indicating copy to clipboard operation
graylog2-server copied to clipboard

Creating output from Data Routing page for Stream results in empty output configuration

Open dennisoelkers opened this issue 2 months ago • 1 comments

Current Behavior

When creating an output from a stream's Data Routing page produces an output with an empty configuration. The settings for e.g. the TCP output (host/ip, port, ...) are not even shown:

Image

Editing an output on this page does not work either.

When looking at the System Outputs page, you can see that outputs have no configuration:

Image (The `Test` output was created differently)

Subsequently, output processing does not work when ingesting messages:

2025-09-30 14:22:31,485 ERROR: org.graylog2.outputs.OutputRegistry - Unable to fetch output 68dbc87f4662675261e6fed9, fault #1
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.NullPointerException
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2077)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3985)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4854)
	at org.graylog2.outputs.OutputRegistry.getOutputForIdAndStream(OutputRegistry.java:147)
	at org.graylog2.outputs.OutputRouter.getMessageOutputsForStream(OutputRouter.java:42)
	at org.graylog2.outputs.OutputRouter.getStreamOutputsForMessage(OutputRouter.java:62)
	at org.graylog2.buffers.processors.OutputBufferProcessor.onEvent(OutputBufferProcessor.java:161)
	at org.graylog2.buffers.processors.OutputBufferProcessor.onEvent(OutputBufferProcessor.java:55)
	at org.graylog2.shared.buffers.PartitioningWorkHandler.onEvent(PartitioningWorkHandler.java:52)
	at com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:167)
	at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:122)
	at com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable.run(InstrumentedThreadFactory.java:66)
	at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.lang.NullPointerException
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Class.java:421)
	at java.base/java.lang.Class.forName(Class.java:412)
	at org.graylog.enterprise.integrations.outputs.journaled.common.transformers.TransformHandler.<init>(TransformHandler.java:32)
	at org.graylog.enterprise.integrations.outputs.journaled.common.transformers.TransformHandler$$FastClassByGuice$$746b07e9.GUICE$TRAMPOLINE(<generated>)
	at org.graylog.enterprise.integrations.outputs.journaled.common.transformers.TransformHandler$$FastClassByGuice$$746b07e9.apply(<generated>)
	at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:82)
	at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)

Possible Solution

Steps to Reproduce (for bugs)

Context

Your Environment

  • Graylog Version: 7.0.0 beta 2
  • Java Version:
  • OpenSearch Version:
  • MongoDB Version:
  • Operating System:
  • Browser version:

Checklist

[] This issue fix need to be backported. [] Does this issue have security implications?

dennisoelkers avatar Sep 30 '25 12:09 dennisoelkers

I could reproduce it. In the OutputResource.create() no configuration was handed in. When creating a new output via the outputs-page, it was. So I assume it to be a frontend-issue.

fpetersen-gl avatar Dec 05 '25 16:12 fpetersen-gl