diff --git a/docs/README.md b/docs/README.md
index e2a342d20f2..1594c940620 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,3 +1,12 @@
+
# Tekton Pipelines
Tekton Pipelines is a Kubernetes extension that installs and runs on your Kubernetes cluster.
@@ -39,7 +48,7 @@ Tekton Pipelines defines the following entities:
## Getting started
-To get started, complete the [Tekton Pipelines Tutorial](tutorial.md) and go through our
+To get started, complete the [Tekton Pipelines Tutorial](https://github.com/tektoncd/pipeline/blob/master/docs/tutorial.md) and go through our
[examples](https://github.com/tektoncd/pipeline/tree/master/examples).
## Understanding Tekton Pipelines
diff --git a/docs/auth.md b/docs/auth.md
index ee8a8398aac..45559f9a211 100644
--- a/docs/auth.md
+++ b/docs/auth.md
@@ -1,3 +1,9 @@
+
# Authentication
This document defines how authentication is provided during execution of a
diff --git a/docs/conditions.md b/docs/conditions.md
index 77051c28b62..5a81f8d671f 100644
--- a/docs/conditions.md
+++ b/docs/conditions.md
@@ -1,3 +1,9 @@
+
# Conditions
This document defines `Conditions` and their capabilities.
diff --git a/docs/container-contract.md b/docs/container-contract.md
index a6a51fa10bf..af12c346dda 100644
--- a/docs/container-contract.md
+++ b/docs/container-contract.md
@@ -1,3 +1,9 @@
+
# Container Contract
Each container image used as a step in a [`Task`](tasks.md) must comply with a
diff --git a/docs/labels.md b/docs/labels.md
index 08f8df24b3e..33861dde0a2 100644
--- a/docs/labels.md
+++ b/docs/labels.md
@@ -1,3 +1,9 @@
+
# Labels
In order to make it easier to identify objects that are all part of the same
diff --git a/docs/logs.md b/docs/logs.md
index 84d0b244927..60ec07c2a86 100644
--- a/docs/logs.md
+++ b/docs/logs.md
@@ -1,3 +1,9 @@
+
# Logs
Logs for [`PipelineRuns`](pipelineruns.md) and [`TaskRuns`](taskruns.md) are
diff --git a/docs/metrics.md b/docs/metrics.md
new file mode 100644
index 00000000000..c4f5bbad5f6
--- /dev/null
+++ b/docs/metrics.md
@@ -0,0 +1,23 @@
+
+# Pipeline Controller Metrics
+
+Following pipeline metrics are exposed at `controller-service` on port `9090`
+
+There are different kinds of exporters available: Prometheus, Google Stackdriver, etc. They can be configured
+using [observability configuration](../config/config-observability.yaml).
+
+| Metric name| Metric type | Labels/tags | Status |
+| ---------- | ----------- | ----------- | ----------- |
+| tekton_pipelinerun_duration_seconds_[bucket, sum, count] | Histogram | `pipeline`=<pipeline_name>
`pipelinerun`=<pipelinerun_name>
`status`=<status>
`namespace`=<pipelinerun-namespace> | experimental |
+| tekton_pipelinerun_taskrun_duration_seconds_[bucket, sum, count] | Histogram | `pipeline`=<pipeline_name>
`pipelinerun`=<pipelinerun_name>
`status`=<status>
`task`=<task_name>
`taskrun`=<taskrun_name>
`namespace`=<pipelineruns-taskruns-namespace>| experimental |
+| tekton_pipelinerun_count| Counter | `status`=<status> | experimental |
+| tekton_running_pipelineruns_count | Gauge | | experimental |
+| tekton_taskrun_duration_seconds_[bucket, sum, count] | Histogram | `status`=<status>
`task`=<task_name>
`taskrun`=<taskrun_name>
`namespace`=<pipelineruns-taskruns-namespace> | experimental |
+| tekton_taskrun_count | Counter | `status`=<status> | experimental |
+| tekton_running_taskruns_count | Gauge | | experimental |
+| tekton_taskruns_pod_latency | Gauge | `namespace`=<taskruns-namespace>
`pod`= < taskrun_pod_name>
`task`=<task_name>
`taskrun`=<taskrun_name>
| experimental |
diff --git a/docs/migrating-from-knative-build.md b/docs/migrating-from-knative-build.md
index 83a218373b0..aeb122a858a 100644
--- a/docs/migrating-from-knative-build.md
+++ b/docs/migrating-from-knative-build.md
@@ -1,3 +1,9 @@
+
# Migrating from [Knative Build](https://github.com/knative/build)
This doc describes a process for users who are familiar with Knative `Build` and
diff --git a/docs/pipelineruns.md b/docs/pipelineruns.md
index 21ac34770be..2822c01569e 100644
--- a/docs/pipelineruns.md
+++ b/docs/pipelineruns.md
@@ -1,3 +1,9 @@
+
# PipelineRuns
This document defines `PipelineRuns` and their capabilities.
diff --git a/docs/pipelines.md b/docs/pipelines.md
index 898051ccee3..1993e006c24 100644
--- a/docs/pipelines.md
+++ b/docs/pipelines.md
@@ -1,3 +1,9 @@
+
# Pipelines
This document defines `Pipelines` and their capabilities.
diff --git a/docs/podtemplates.md b/docs/podtemplates.md
index 5c297c95ae9..feba09727ca 100644
--- a/docs/podtemplates.md
+++ b/docs/podtemplates.md
@@ -1,3 +1,9 @@
+
# PodTemplates
A pod template specifies a subset of
@@ -6,7 +12,7 @@ configuration that will be used as the basis for the `Task` pod.
This allows to customize some Pod specific field per `Task` execution, aka `TaskRun`.
-Alternatively, you can also define a default pod template in tekton config, see [here](./install.md)
+Alternatively, you can also define a default pod template in tekton config, see [here](https://github.com/tektoncd/pipeline/blob/master/docs/install.md)
When a pod template is specified for a `PipelineRun` or `TaskRun`, the default pod template is ignored, i.e.
both templates are **NOT** merged, it's always one or the other.
diff --git a/docs/resources.md b/docs/resources.md
index 315c0816a76..8fee8bd75bf 100644
--- a/docs/resources.md
+++ b/docs/resources.md
@@ -1,3 +1,9 @@
+
# PipelineResources
`PipelineResources` in a pipeline are the set of objects that are going to be
diff --git a/docs/taskruns.md b/docs/taskruns.md
index 34e64b3f399..80c6c71c58d 100644
--- a/docs/taskruns.md
+++ b/docs/taskruns.md
@@ -1,3 +1,9 @@
+
# TaskRuns
Use the `TaskRun` resource object to create and run on-cluster processes to
diff --git a/docs/tasks.md b/docs/tasks.md
index b5675cf3b96..dc44ad50d3c 100644
--- a/docs/tasks.md
+++ b/docs/tasks.md
@@ -1,3 +1,9 @@
+
# Tasks
A `Task` (or a [`ClusterTask`](#clustertask)) is a collection of sequential
diff --git a/docs/tutorial.md b/docs/tutorial.md
index fbb9ff10ff1..3ce639d7ffa 100644
--- a/docs/tutorial.md
+++ b/docs/tutorial.md
@@ -17,7 +17,7 @@ specific to a given cloud computing service.
## Before you begin
-Before you begin this tutorial, make sure you have [installed and configured](install.md)
+Before you begin this tutorial, make sure you have [installed and configured](https://github.com/tektoncd/pipeline/blob/master/docs/install.md)
the latest release of Tekton on your Kubernetes cluster, including the
[Tekton CLI](https://github.com/tektoncd/cli).