marotpam/zipkin-instrumentation-stripe-php

Zipkin instrumentation for Stripe HTTP Client in PHP

v0.1 2018-11-20 08:34 UTC

This package is not auto-updated.

Last update: 2024-05-02 11:21:50 UTC


README

Stripe PHP client with Zipkin instrumentation

Installation

composer require marotpam/zipkin-instrumentation-stripe-php

Usage

You need to override the default HttpClient that stripe-php uses, with one that includes the Zipkin Tracer shared of your application. For further details on how to use Zipkin in your PHP applications please refer to Zipkin's official PHP library

use Stripe\ApiRequestor;
use Stripe\HttpClient\CurlClient;
use Stripe\Stripe;
use Zipkin\Tracer;
use ZipkinStripe\HttpClient;

/**
 * @param string $stripeSecretKey Stripe API key
 * @param Tracer $tracer Zipkin tracer used across your application
 */
public function initialiseStripeClient(string $stripeSecretKey, Tracer $tracer)
{
    Stripe::setApiKey($stripeSecretKey);

    $instrumentedStripeClient = new HttpClient(CurlClient::instance(), $tracer);

    ApiRequestor::setHttpClient($instrumentedStripeClient);
}