killbill/killbill-commons

Missing userToken from RetryableService json

Closed this issue · 1 comments

The originalEvent from RetryableService is missing the userToken. Example:

{
  "originalEvent": "{\"busEvent\":{\"extBusEvent\":{\"objectId\":null,\"objectType\":\"INVOICE\",\"eventType\":\"INVOICE_NOTIFICATION\",\"accountId\":\"ba135655-1de0-4847-abcf-a4f0343fc733\",\"tenantId\":\"d05188d5-a9ee-4f07-908c-6174c437973a\",\"metaData\":null},\"extBusEventClass\":\"org.killbill.billing.beatrix.extbus.DefaultBusExternalEvent\",\"userToken\":null,\"searchKey1\":4184783402330769479,\"searchKey2\":5787557447408176903},\"busEventClass\":\"org.killbill.billing.osgi.KillbillEventRetriableBusHandler$OSGIBusEvent\"}",
  "originalEventClass": "org.killbill.queue.retry.SubscriberNotificationEvent",
  "originalEffectiveDate": "2018-03-26T04:53:18.000Z",
  "retryNb": 5

@sbrossie I think we already have that information.

Here's an example of a failed notification with two retries:

*************************** 1. row ***************************
                record_id: 1
               class_name: org.killbill.notificationq.TestNotificationQueue$TestNotificationKey
               event_json: {"value":"Foo"}
               user_token: 916a3558-c84d-46d5-a23e-c6c0ba67dd66
             created_date: 2018-05-14 14:35:10
           creating_owner: acme
         processing_owner: acme
processing_available_date: 2018-05-14 14:35:14
         processing_state: FAILED
              error_count: 0
              search_key1: 65
              search_key2: 34
               queue_name: svc:queueName
           effective_date: 2018-05-14 14:35:12
        future_user_token: dc06ebbd-eb32-4161-8568-38d137c8aa8b
*************************** 2. row ***************************
                record_id: 2
               class_name: org.killbill.queue.retry.RetryNotificationEvent
               event_json: {"originalEvent":"{\"value\":\"Foo\"}","originalEventClass":"org.killbill.notificationq.TestNotificationQueue$TestNotificationKey","originalEffectiveDate":"2018-05-14T14:35:12.000Z","retryNb":1}
               user_token: dc06ebbd-eb32-4161-8568-38d137c8aa8b
             created_date: 2018-05-14 14:35:14
           creating_owner: acme
         processing_owner: acme
processing_available_date: 2018-05-14 14:35:14
         processing_state: FAILED
              error_count: 0
              search_key1: 65
              search_key2: 34
               queue_name: notifications-retries:queueName
           effective_date: 2018-05-14 14:35:12
        future_user_token: fb06975c-be94-41b1-b518-2ecfdff102a1
*************************** 3. row ***************************
                record_id: 3
               class_name: org.killbill.queue.retry.RetryNotificationEvent
               event_json: {"originalEvent":"{\"value\":\"Foo\"}","originalEventClass":"org.killbill.notificationq.TestNotificationQueue$TestNotificationKey","originalEffectiveDate":"2018-05-14T14:35:12.000Z","retryNb":2}
               user_token: fb06975c-be94-41b1-b518-2ecfdff102a1
             created_date: 2018-05-14 14:35:14
           creating_owner: acme
         processing_owner: acme
processing_available_date: 2018-05-14 14:35:14
         processing_state: FAILED
              error_count: 0
              search_key1: 65
              search_key2: 34
               queue_name: notifications-retries:queueName
           effective_date: 2018-05-14 14:35:12
        future_user_token: a551af8b-670c-4e5f-bd2d-7cc04e6590b7

The original future_user_token (dc06ebbd-eb32-4161-8568-38d137c8aa8b) is the user_token of the first retry. Similarly, the future_user_token (fb06975c-be94-41b1-b518-2ecfdff102a1) of the first retry is the user_token of the second retry.