Running Imports

Imports can be executed directly in the ExpressionEngine control panel, or by requesting the Import URL. Note that the Import URL does not require the user to be logged in to execute. Therefore, if a random user discovers your Import URL, they can run a import for you without you knowing! For this reason, it is recommended to use a passkey, which you can set when configuring the import.

If you encounter any issues running an import, the first step you should take is look at your import log, as described in the troubleshooting section. DataGrab has pretty extensive logging, so there is a good chance you will find what you are looking for in the logs.

Toolbar Actions

Import URL simply gives you the URL to the import so you can run it in a cron, or outside of the control panel.

Memory Management and timeout issues

DataGrab uses import queues. When an import initiated it reads your import file and creates records in the queue database table for all the items it needs to import. This could be 5 or 5000 entries. It then uses consumer processes to import the entries in batches, defined by your batch import size setting (defaults to 50). Consumers will stop importing when it hits that limit, or if it reaches a PHP script max execution time. DataGrab will start new consumers when the import is executed through the control panel (see the screenshot above), or if using the ACT url to import. However, if you are importing with the CLI, you will need to manually start new consumers. Fortunately there are things like cron and supervisord that will automatically start new consumers on whatever interval you define. Read more about this in the Automatic Imports section of the docs.

Last updated