Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Rudder Php Sdk Laravel Package

rudderstack/rudder-php-sdk

View on GitHub
Deep Wiki
Context7

What is RudderStack?

Ask DeepWiki

RudderStack is a customer data pipeline tool for collecting, routing and processing data from your websites, apps, cloud tools, and data warehouse.

More information on RudderStack can be found here.

Getting Started with PHP SDK

Install rudder-php-sdk using composer

git clone https://github.com/rudderlabs/rudder-php-sdk /my/app/folders/

Initialize the Client

use Rudder\Rudder;

require_once realpath(__DIR__ . '/vendor/autoload.php');

Rudder::init(WRITE_KEY, array(
  "data_plane_url" => DATA_PLANE_URL,
  "consumer"       => "lib_curl",
  "debug"          => true,
  "max_queue_size" => 10000,
  "flush_at"     => 100
));

SDK Initialization options

Below parameters are optional and can be passed during SDK initialization.

Name Type Default value Description
consumer String lib_curl To explicitly mark which consumer to use.
data_plane_url String hosted.rudderlabs.com The data plane URL.
debug Boolean false Whether to log messages and wait for a response. Makes any queuing consumers non-async, defaults to false. This will make the library block until a response has been received from the API, so it is not recommended for production use.
ssl Boolean true Whether to use SSL for the connection.
tls String false Whether to use TLS instead of SSL for the socket connection.
error_handler Function function ($code, $message) {} A handler which will be called on errors to aid in debugging. A function to handle errors, particularly useful for debugging. Note that if debug mode is not specified, then the error_handler will only be called on connection level errors and timeouts.
max_queue_size Number 10000 The max number of items in the queue .
flush_at Number 100 How many items to send in a single curl request .
timeout Number 0.5 The number of seconds to wait for the socket request to time out .
filename String /tmp/analytics.log The location to write the log file when file consumer is selected.
compress_request Boolean true Whether to use gzipped request payloads. This is supported for server versions 1.4.0 and above.
flush_inteval Number 10000 Frequency in milliseconds to send data using flush method execution.
curl_timeout Number 0 (infinite) Set timeout for the curl connections.
curl_connecttimeout Number 300 Set connect timeout for the curl connections.
max_retries Number 3 Number of retries after the initial request for transient failures.
retry_base_delay Number 100 Base retry delay in milliseconds.
max_retry_delay Number 30000 Maximum retry backoff delay in milliseconds.
retry_jitter_ratio Number 0.2 Jitter ratio added to retry delays.
max_item_size_bytes Number 32000 Set maximum message item size in bytes.
max_queue_size_bytes Number 512000 Set maximum batch size in bytes.
filepermissions Number 0644 Set the file permissions for file consumer.

The lib_curl and socket consumers retry HTTP 429 and 5xx responses, then return false after the retry budget is exhausted. The fork_curl consumer is fire-and-forget when debug is disabled, so it passes retry flags to the background curl process but cannot synchronously report final delivery failure.

Send Events

Rudder::track(array(
  "userId" => "f4ca124298",
  "event" => "Signed Up",
  "properties" => array(
    "plan" => "Enterprise"
  )
));

Acknowledgements

This project is a fork of analytics-php by [segmentio].

Contact Us

If you come across any issues while configuring or using this SDK, feel free to start a conversation on our Slack channel. We will be happy to help you.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky