Configuration options

For more advanced users, there are additional configuration options to allow for a deeper understanding of Watson NLP log files and metrics.

Prometheus Metrics

Watson Runtime reports metrics in Prometheus format on port 8086 by default. These can be very helpful for checking service health, but make develop does not yet spin up a dashboard to visualize them.

Health and Readiness checks

Within the runtime image is the GRPC health probe which can be used to check the health of the runtime gRPC server running in the Pod.

In your Kubernetes Pod specification manifest, specify a livenessProbe and/or readinessProbe for the container:

readinessProbe:
  exec:
    command: ["/bin/grpc_health_probe", "-addr=:8085"]
  initialDelaySeconds: 5
livenessProbe:
  exec:
    command: ["/bin/grpc_health_probe", "-addr=:8085"]
  initialDelaySeconds: 10

Logging Channel Convention

In this repository, logging channel names are set to be 12 characters, where terms are separated by hypens. The logging channel should provide some kind of direction as to which module is producing the log. Further, when mocks are available, as is the case with servicers, the letters I and M should be used to indicate whether the module being run is an Implementation or a Mock. As an example, MR-SERVICR-M refers to the mock of the Model Runtime Servicer, while MR-SERVICR-I refers to the fully implemented Model Runtime Servicer. When possible, channels created in tests should also include TEST as part of the channel name.

Configuration Parameters

Watson-Runtime has many configuration values that can be overridden either through environment variables or .yaml configuration files.

Configure the paths to your custom config .yamls with the CONFIG_FILES environment variable, e.g.

export CONFIG_FILES=/path/to/config.yaml,/path/to/other/config.yaml

Any configuration key can be overridden with an environment variable by using all upper-case and substituting '.' with '_'. e.g. set the tls.server.key key with TLS_SERVER_CERT.

All available configuration keys and their default values can also be found in the config file (watson_runtime/config/config.yml).