mapp-digital / mapp-intelligence-tracking
Mapp Intelligence - Server-side PHP tracking library
Package info
github.com/mapp-digital/Mapp-Intelligence-PHP-Tracking
pkg:composer/mapp-digital/mapp-intelligence-tracking
Requires
- php: >=7.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- ext-zlib: *
Requires (Dev)
- phpunit/phpunit: ~7.0
- squizlabs/php_codesniffer: ~3.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Site | Docs | Support | Changelog
Server-side tracking is crucial for companies needing to measure mission-critical information on their website, such as order information or other website goals.
The PHP library of Mapp Intelligence helps customers to setup server-side tracking when using Mapp Intelligence as their analysis tool.
The basis for the data collection on your server is implementing the respective library. The Mapp Intelligence tracking library provides scripts to track user behavior and technical information, such as user agents, among others. In addition to the standard data collection, the tracking library offers many options to customize tracking based on specific use cases. Typical use cases are product, order and shipment tracking or the tracking of application processes.
Development
Requirements
| Software | Version |
|---|---|
docker |
19.0+ |
docker-compose |
1.24+ |
make |
Lint
$ make lint
Test
Test Mapp Intelligence - Server-side PHP tracking library inside a docker container.
$ make test-all> run tests for PHP v7.4 and v8.2 (test-php7andtest-php8)$ make test-php7> run tests for PHP v7.4$ make test-php8> run tests for PHP v8.2$ make test-latest> run tests for the latest PHP image (currently PHP 8.5). The image does not build at the moment: runkit7 and xdebug 3.2.1 do not support PHP 8.5.
Stress test
$ make stress-test> several processes write into the same request logging files while the cron job takes them over (PHP 7.4 and PHP 8), e.g.make stress-test STRESS_ARGS="--writers=50 --requests=50"
Release
$ make release> runsmake lintandmake test-php7
Documentation
$ make docs-sync> downloads the published documentation (docs.mapp.com, pages listed indocs/docs.txt) and stores it as Markdown indocs/. Warning: it overwritesdocs/php-librarywith the published state, local changes that are not published yet (e.g. for 2.1.0) are lost.