Store entities that were not imported and errors in Redis
Problem
Currently we do not provide exact feedback to the user on finished import process. We show how many entities were imported, but we don't provide which entities exactly were not successfully imported.
Proposal
In each worker (the is responsible for record creation) on the last retry (exhausted) put entity id
(from GitHub) and error message
to a Redis. It can be stored under a separate Redis key per each entity type or stored under one key but including entity type then. Type is needed later on to build a direct link (to GitHub) for the item that was not imported.
For this step all errors should be stored in redis during the import and 2 days after. There is next step task Store entities that were not imported with errors in DB that should place this data into DB after import finish.
Technical details
There probably might be the case, when after retries the item was successfully imported, which means we have to collect errors on the last retry or when retries were exhausted, to make sure we are not collecting falsy negative results