Event Statuses
INGESTION_IN_PROGRESS
-
If the ingested event already exists and
-
if it is an entitled event,
-
if the status of the existing event is not IN_PROGRESS, we consider the ingested event as separate correction event and mark it as IN_PROGRESS
-
else we do an event sha check to check if event is a duplicate. If found duplicate we mark it as INGESTION_FAILED_DUPLICATE_EVENT else we process the existing event.
-
-
else
-
on idempotency check success, we mark event as IN_PROGRESS
-
else event is marked as INGESTION_FAILED_DUPLICATE_EVENT upon duplicate check
-
else we mark it as IN_PROGRESS
-
INGESTION_FAILED
- If the event is not of internal schema type and if the attributes or dimensions are missing in the event.
- On failure of getting the necessary details to process the events like schema, account etc.
INGESTION_FAILED_SCHEMA_NOT_DEFINED
- Upon processing an IN_PROGRESS event if the schema definition is not found
- Upon processing an IN_PROGRESS event internal schema defined task like named_license, usage events, if the name of the internal schema is mentioned wrong
INGESTION_FAILED_UNITS_INVALID
- On computation of usage from matched usage_meters, if the json logic parsing, evaluation, big decimal conversion of usage_units fails
INGESTION_COMPLETED_NO_MATCHING_METERS
- In case of entitledEvent from IN_PROGRESS state, if the presence of usageMeter is not found before ingestion of the entitled event
- In case of non named_license event, if there is no usage meters found.
INGESTION_COMPLETED_EVENT_METERED
- On succesful completion of named_license_event
- On succesful insertion of usage_metadata for any other event than named_license_event
INGESTION_COMPLETED_EVENT_NOT_METERED
- If no usage_metadata is generated
UNKNOWN
- On failure of transformation of valid event status number to IngestionStatus
INGESTION_FAILED_ENRICHMENT_FAILED
- For entitled event in IN_PROGRESS, if enrichment processing fails
INGESTION_FAILED_PAST_GRACE_PERIOD
- On processing an IN_PROGRESS event, if the ingestion_timestamp is more than the cycle end date plus grace_period
INGESTION_FAILED_ACCOUNT_NOT_FOUND
- If the process of getting account details fails as a part of processing IN_PROGRESS events
INGESTION_FAILED_DUPLICATE_EVENT
- If insertion of usage_metadata, usage_entries, usage_for_cycle results in EntityAlreadyExistsException
REVERTED
- For undo event corrections, in case of existing event status not in (IN_PROGRESS, INGESTION_FAILED_DUPLICATE_EVENT, INGESTION_FAILED_INSUFFICIENT_CREDITS, REVERTED)
- For redo event corrections, in case of existing event status not in (IN_PROGRESS, INGESTION_FAILED_DUPLICATE_EVENT, REVERTED, INGESTION_FAILED_UNITS_INVALID, INGESTION_FAILED_PAST_GRACE_PERIOD)
- For redo_event event corrections, in case of existing event status not in (IN_PROGRESS, INGESTION_FAILED_DUPLICATE_EVENT, REVERTED, INGESTION_FAILED_UNITS_INVALID, INGESTION_FAILED_PAST_GRACE_PERIOD, INGESTION_FAILED_ACCOUNT_NOT_FOUND)
INGESTION_FAILED_NO_EVENT_ID
- If event with no id is received and there is no eventIdTemplate or eventIdTemplate parsing fails
INGESTION_FAILED_INVALID_NAMED_LICENSE_EVENT
- On processing an IN_PROGRESS named license event, if the event is not a valid internal event type
INGESTION_FAILED_INSUFFICIENT_CREDITS
- On processing an IN_PROGRESS event, if the event is not entitled and the schema has feature_details we try to deduct wallet entries, on failure of deduct wallet entries we mark it as INGESTION_FAILED_INSUFFICIENT_CREDITS