Uploaded image for project: 'Policy Framework'
  1. Policy Framework
  2. POLICY-3089

Cleanup logs for success/failure consumers in apex-pdp

XMLWordPrintable

      When a response consumer is configured in Apex-PDP using pipe separator for success and failure scenarios. For failure response from CDS a stack trace is logged which is unexpected (likely to happen with other components too)

      For example in apex-policy-example:

      "ApexExample_CDSConfigModifyResponseConsumer": {....    "eventName": "ApexExample_CDSConfigModifySuccessResponseEvent|ApexExample_CDSConfigModifyFailureResponseEvent",...

      Apparently, Apex-PDP tries to match the CDS response received to the pipe-separated config in the order in which success/failure event is specified and if the first entry fails it logs a failure.

      Maybe we should be logging a failure only if a match is not found, and simply log correctly for the first match that is found.

      {{org.onap.policy.apex.context.ContextRuntimeException: ApexExample_CDSConfigModifySuccessResponseEvent:0.0.1:NULL:status: object "{{
      {"code":500,"errorMessage":"FAILURE : execute-command : [\"INFO:root:Arguments : Inactive,,\\\\n\"]","message":"failure","timestamp":"Fri Jan 29 21:11:40 GMT 2021"}
      }}" Avro unmarshalling failed: Expected field name not found: eventType at org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelper.unmarshal(AvroSchemaHelper.java:238) at org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelper.createNewInstance(AvroSchemaHelper.java:118) at org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelper.createNewInstance(AvroSchemaHelper.java:127) at org.onap.policy.apex.service.engine.event.impl.jsonprotocolplugin.Apex2JsonEventConverter.jsonObject2ApexEventWithFields(Apex2JsonEventConverter.java:350) at org.onap.policy.apex.service.engine.event.impl.jsonprotocolplugin.Apex2JsonEventConverter.jsonObject2ApexEvent(Apex2JsonEventConverter.java:313) at org.onap.policy.apex.service.engine.event.impl.jsonprotocolplugin.Apex2JsonEventConverter.jsonStringApexEvent(Apex2JsonEventConverter.java:292) at org.onap.policy.apex.service.engine.event.impl.jsonprotocolplugin.Apex2JsonEventConverter.toApexEvent(Apex2JsonEventConverter.java:111) at org.onap.policy.apex.service.engine.main.ApexEventUnmarshaller.convertToApexEvents(ApexEventUnmarshaller.java:262) at org.onap.policy.apex.service.engine.main.ApexEventUnmarshaller.receiveEvent(ApexEventUnmarshaller.java:221) at org.onap.policy.apex.service.engine.main.ApexEventUnmarshaller.receiveEvent(ApexEventUnmarshaller.java:200) at org.onap.policy.apex.plugins.event.carrier.grpc.ApexGrpcProducer.consumeEvent(ApexGrpcProducer.java:152) at org.onap.policy.apex.plugins.event.carrier.grpc.ApexGrpcProducer.sendEvent(ApexGrpcProducer.java:132) at org.onap.policy.apex.service.engine.main.ApexEventMarshaller.run(ApexEventMarshaller.java:188) at java.base/java.lang.Thread.run(Thread.java:834)Caused by: org.apache.avro.AvroTypeException: Expected field name not found: eventType at org.apache.avro.io.JsonDecoder.doAction(JsonDecoder.java:476) at org.apache.avro.io.parsing.Parser.advance(Parser.java:86) at org.apache.avro.io.JsonDecoder.advance(JsonDecoder.java:135) at org.apache.avro.io.JsonDecoder.readString(JsonDecoder.java:215) at org.apache.avro.io.JsonDecoder.readString(JsonDecoder.java:210) at org.apache.avro.io.ResolvingDecoder.readString(ResolvingDecoder.java:209) at org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:469) at org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:459) at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:191) at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:160) at org.apache.avro.generic.GenericDatumReader.readField(GenericDatumReader.java:259) at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:247) at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:179) at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:160) at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:153) at org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelper.unmarshal(AvroSchemaHelper.java:233) ... 13 common frames omitted}}
      

       

            a.sreekumar a.sreekumar
            ramverma ramverma
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: