caliban.reporting

Type members

Classlikes

Manages schema reporting on start up, can be provided a set of ReportingRefs which will then be periodically sent to apollo

Manages schema reporting on start up, can be provided a set of ReportingRefs which will then be periodically sent to apollo

Companion:
object
Companion:
class
sealed trait ReportingError
Companion:
object
Companion:
class
case class ReportingResponse(withCoreSchema: Boolean, in: Duration)
Companion:
object
Companion:
class
case class SchemaReportingRef[-A](bootId: UUID, graphRef: String, coreSchema: ZRef[Nothing, Nothing, A, String], platform: Option[String], serverId: Option[String], userVersion: Option[String], runtimeVersion: Option[String], libraryVersion: Option[String])
Value parameters:
bootId

A randomly generated UUID that's unique for each instance of your edge server. Set this value on server startup (a given value should not persist across restarts).

coreSchema

The full schema SDL of the graph that is being reported. Represented as a ZRef with a transform from A to the rendered schema.

graphRef

Indicates which Apollo Studio graph and variant the server is reporting its schema to (e.g., my-graph-id@my-variant)

libraryVersion

The name and version of the server and/or reporting agent your edge server is using, such as apollo-server-2.8 or graphql-java-3.1.

platform

The infrastructure environment that your edge server is running in (localhost, kubernetes/deployment, aws lambda, google cloud run, google cloud function, AWS ECS, etc.)

runtimeVersion

The runtime that your edge server is running, such as node 12.03.

serverId

An ID that's unique for each instance of your edge server. Unlike bootId, this value should persist across an instance's restarts. In a Kubernetes cluster, this might be the pod name, whereas the container can restart.

userVersion

An arbitrary string you can set to distinguish data sent by different versions of your edge server. For example, this can be the SHA of the Git commit for your deployed server code. We plan to make this value visible in Apollo Studio.

Companion:
object
Companion:
class
object Util