@@ -17,8 +17,10 @@ import (
1717
1818var _ = Describe ("[ClusterLogForwarder] Forward to Lokistack" , func () {
1919 const (
20- forwarderName = "my-forwarder"
21- logGenName = "log-generator"
20+ forwarderName = "my-forwarder"
21+ logGenName = "log-generator"
22+ httpReceiverPort = 8080
23+ httpReceiver = "http-audit"
2224 )
2325 var (
2426 err error
@@ -236,6 +238,50 @@ var _ = Describe("[ClusterLogForwarder] Forward to Lokistack", func() {
236238 Expect (found ).To (BeTrue ())
237239 })
238240
241+ It ("should send logs to lokistack with HTTP receiver as audit logs" , func () {
242+ forwarder .Spec .Inputs = []obs.InputSpec {
243+ {
244+ Name : httpReceiver ,
245+ Type : obs .InputTypeReceiver ,
246+ Receiver : & obs.ReceiverSpec {
247+ Type : obs .ReceiverTypeHTTP ,
248+ Port : httpReceiverPort ,
249+ HTTP : & obs.HTTPReceiver {
250+ Format : obs .HTTPReceiverFormatKubeAPIAudit ,
251+ },
252+ },
253+ },
254+ }
255+
256+ forwarder .Spec .Pipelines = []obs.PipelineSpec {
257+ {
258+ Name : "input-receiver-logs" ,
259+ OutputRefs : []string {"lokistack-otlp" },
260+ InputRefs : []string {httpReceiver },
261+ },
262+ }
263+
264+ forwarder .Spec .Outputs = append (forwarder .Spec .Outputs , * lokiStackOut )
265+
266+ if err := e2e .CreateObservabilityClusterLogForwarder (forwarder ); err != nil {
267+ Fail (fmt .Sprintf ("Unable to create an instance of logforwarder: %v" , err ))
268+ }
269+ if err := e2e .WaitForDaemonSet (forwarder .Namespace , forwarder .Name ); err != nil {
270+ Fail (err .Error ())
271+ }
272+
273+ httpReceiverServiceName := fmt .Sprintf ("%s-%s" , forwarderName , httpReceiver )
274+ httpReceiverEndpoint := fmt .Sprintf ("https://%s.%s.svc.cluster.local:%d" , httpReceiverServiceName , deployNS , httpReceiverPort )
275+
276+ if err = e2e .DeployCURLLogGeneratorWithNamespaceAndEndpoint (deployNS , httpReceiverEndpoint ); err != nil {
277+ Fail (fmt .Sprintf ("unable to deploy log generator %v." , err ))
278+ }
279+
280+ found , err := lokistackReceiver .HasAuditLogs (serviceAccount .Name , framework .DefaultWaitForLogsTimeout )
281+ Expect (err ).To (BeNil ())
282+ Expect (found ).To (BeTrue ())
283+ })
284+
239285 AfterEach (func () {
240286 e2e .Cleanup ()
241287 e2e .WaitForCleanupCompletion (logGenNS , []string {"test" })
0 commit comments