jsonrpc.yaml

The jsonrpc.yaml file defines some of the configurable arguments of the jsonrpc endpoint.

Description

Traffic Server Implements and exposes management calls using a JSONRPC API. This API is base on the following two things:

  • JSON format. Lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It’s basically a collection of name/value pairs.

  • JSONRPC 2.0 protocol. Stateless, light-weight remote procedure call (RPC) protocol. Primarily this specification defines several data structures and the rules around their processing.

In order for programs to communicate with Traffic Server, the server exposes a JSONRRPC 2.0 API where programs can communicate with it. In this document you will find some of the configurable arguments that can be changed.

Configuration

Note

Traffic Server will start the JSONRPC 2.0 server without any need for configuration.

If a non-default configuration is needed, the following describes the configuration structure.

File jsonrpc.yaml is a YAML format. The default configuration is:

rpc:
  enabled: true
  unix:
    restricted_api: true

Field Name

Description

enabled

Enable/disable toggle for the whole implementation, server will not start if this is false/no

unix

Specific definitions as per transport.

IPC Socket (unix)

Field Name

Description

lock_path_name

Lock path, including the file name. (changing this may have impacts in traffic_ctl)

sock_path_name

Sock path, including the file name. This will be used as sockaddr_un.sun_path (changing this may have impacts in traffic_ctl)

backlog

Check https://man7.org/linux/man-pages/man2/listen.2.html

max_retry_on_transient_errors

Number of times the implementation is allowed to retry when a transient error is encountered.

restricted_api

Used to set rpc unix socket permissions. If restricted 0700 will be set, otherwise 0777. true by default.

Note

Currently, there is only 1 communication mechanism supported. Unix Domain Sockets