matomo-org / matomo-org/plugin-GoogleAnalyticsImporter

If shell_exec()/exec() is not available allow using API methods to manage archives

Open
#17 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
29
Forks
16
Avg merge
15h 12m
Merged PRs (30d)
14

Description

On some systems it's not possible to use shell_exec()/exec() to start the import. We can provide an alternative by providing a way to initialize imports via API methods.

This would require:
- an API method to import entities
- an API method to start an import for a day and when finished invoke the next day if the daily API request limit hasn't been reached
* we only do one day at a time to avoid any server side request timeouts
- if a setting is set or we can't run shell_exec/exec, use the API method in Tasks.php & Importer.php

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading Tasks.php and Importer.php, focusing on how imports are currently started through shell_exec()/exec(). Trace the import flow and identify where API methods would need to initialize entity imports and process one day at a time. Done means API-based importing works when configured or when shell execution is unavailable, while respecting the daily request limit.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.