We have a tracker to mark nodes indexed in the Drupal database in 'search_api_item' table.
\Drupal\search_api\Plugin\search_api\tracker\Basic
You can investigate the class. It will help to understand how to check if nodes were indexed.For example, after updating a node this tracker will be called from this method
\Drupal\search_api\Entity\Index::trackItemsInsertedOrUpdated
Be care with 'indexing_order':'fifo' => $this->t('Index items in the same order in which they were saved'),
It can make problems because we have this code in the tracker class:
// Update the status of unindexed items only if the item order is LIFO. // (Otherwise, an item that's regularly being updated might never get // indexed.) if ($this->configuration['indexing_order'] === 'fifo') { $update->condition('status', self::STATUS_INDEXED); }