3 min • read

Types of intercepts

Personal intercept

Personal intercepts allow you to be selective and intercept only some of the traffic to a service while not interfering with the rest of the traffic. This allows you to share a cluster with others on your team without interfering with their work.

In the illustration above, Orange requests are being made by Developer 2 on their laptop and the green are made by a teammate, Developer 1, on a different laptop.

Each developer can intercept the Orders service for their requests only, while sharing the rest of the development environment.

Creating and using personal intercepts

  1. Creating the intercept: Intercept your service from your CLI:

    shell
    telepresence intercept SERVICENAME --http-match=Personal-Intercept=126a72c7-be8b-4329-af64-768e207a184b

    We're using Personal-Intercept=126a72c7-be8b-4329-af64-768e207a184b as the header for the sake of the example, but you can use any key=value pair you want, or --http-match=auto to have it choose something automatically.

  2. Using the intercept: Send requests to your service by passing the HTTP header:

    http
    Personal-Intercept: 126a72c7-be8b-4329-af64-768e207a184b
  3. Using the intercept: Send requests to your service without the HTTP header:

    Requests without the header will be sent to the version of your service that is running in the cluster. This enables you to share the cluster with a team!