Skip to content

Commit

Permalink
[Uptime] Add first draft of uptime docs (#31814)
Browse files Browse the repository at this point in the history
* Add first draft of uptime docs.

* Add first draft of uptime docs.

* Implement PR feedback.

* Add role info to uptime docs

* Impelement some more PR feedback.

* Attempt to add more copy focusing on the 'why' of each piece of the docs.

* uptime docs: grammar, formatting, order

* move location of uptime docs

* Implement more PR feedback.

* Add screenshots.
  • Loading branch information
justinkambic authored and Joel Griffith committed Mar 27, 2019
1 parent e21e438 commit 0271ae2
Show file tree
Hide file tree
Showing 13 changed files with 218 additions and 0 deletions.
2 changes: 2 additions & 0 deletions docs/index.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ include::logs/index.asciidoc[]

include::apm/index.asciidoc[]

include::uptime/index.asciidoc[]

include::graph/index.asciidoc[]

include::dev-tools.asciidoc[]
Expand Down
Binary file added docs/uptime/images/check-history.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/crosshair-example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/error-list.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/filter-bar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/monitor-charts.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/monitor-list.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/snapshot-view.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/uptime/images/status-bar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
28 changes: 28 additions & 0 deletions docs/uptime/index.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[role="xpack"]
[[xpack-uptime]]
= Uptime

[partintro]
--
Use the Uptime UI to monitor the status of network endpoints via HTTP/S, TCP,
and ICMP. You will be able to explore status over time, drill into specific monitors,
and view a high-level snapshot of your environment at a selected point in time.

[float]
== Add monitors
To get started with Uptime monitoring, you'll need to define some monitors and run Heartbeat.
These monitors will provide the data we will be visualizing in the Uptime UI.
See {heartbeat-ref}/heartbeat-configuration.html[Configure Heartbeat] for instructions
on configuring monitors to begin storing Uptime information in your cluster.

[float]
== Uptime, Heartbeat, and Kibana
For Uptime to work, it is important you use the same major versions of Heartbeat and Kibana.
For example, version 6.7 of Kibana will expect an index of `heartbeat-6*`,
while Kibana 7.0 requires an index of `heartbeat-7*` (containing documents from Heartbeat 7.0).

--

include::overview.asciidoc[]
include::monitor.asciidoc[]
include::security.asciidoc[]
54 changes: 54 additions & 0 deletions docs/uptime/monitor.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
[role="xpack"]
[[uptime-monitor]]
== Monitor

The Monitor page will help you get further insight into the performance
of a specific network endpoint. You'll see a detailed visualization of
the monitor's request duration over time, as well as the `up`/`down`
status over time.

[float]
=== Status bar

[role="screenshot"]
image::uptime/images/status-bar.png[Status bar]

The Status bar displays a quick summary of the latest information
regarding your monitor. You can view its latest status, click a link to
visit the targeted URL, see its most recent request duration, and determine the
amount of time that has elapsed since the last check.

You can use the Status bar to get a quick summary of current performance,
beyond simply knowing if the monitor is `up` or `down`.

[float]
=== Monitor charts

[role="screenshot"]
image::uptime/images/monitor-charts.png[Monitor charts]

The Monitor charts visualize information over the time specified in the
date range. These charts can help you gain insight into how quickly requests are being resolved
by the targeted endpoint, and give you a sense of how frequently a host or endpoint
was down in your selected timespan.

The first chart displays request duration information for your monitor.
The area surrounding the line is the range of request time for the corresponding
bucket. The line is the average time.

Next, is a graphical representation of the check statuses over time. Hover over
the charts to display crosshairs with more specific numeric data.

[role="screenshot"]
image::uptime/images/crosshair-example.png[Chart crosshair]

[float]
=== Check history

[role="screenshot"]
image::uptime/images/check-history.png[Check history view]

The Check history displays the total count of this monitor's checks for the selected
date range. You can additionally filter the checks by `status` to help find recent problems
on a per-check basis. This table can help you gain some insight into more granular details
about recent individual data points Heartbeat is logging about your host or endpoint.
61 changes: 61 additions & 0 deletions docs/uptime/overview.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
[role="xpack"]
[[uptime-overview]]

== Overview

The Uptime overview is intended to help you quickly identify and diagnose outages and
other connectivity issues within your network or environment. There is a date range
selection that is global to the Uptime UI; you can use this selection to highlight
an absolute date range, or a relative one, similar to other areas of Kibana.

[float]
=== Filter bar

[role="screenshot"]
image::uptime/images/filter-bar.png[Filter bar]

The filter bar is designed to let you quickly view specific groups of monitors, or even
an individual monitor, if you have defined many.

This control allows you to use automated filter options, as well as input custom filter
text to select specific monitors by field, URL, ID, and other attributes.

[float]
=== Snapshot view

[role="screenshot"]
image::uptime/images/snapshot-view.png[Snapshot view]

This view is intended to quickly give you a sense of the overall
status of the environment you're monitoring, or a subset of those monitors.
Here, you can see the total number of detected monitors within the selected
Uptime date range. In addition to the total, the counts for the number of monitors
in an `up` or `down` state are displayed, based on the last check reported by Heartbeat
for each monitor.

Next to the counts, there is a histogram displaying the change over time throughout the
selected date range.

[float]
=== Monitor list

[role="screenshot"]
image::uptime/images/monitor-list.png[Monitor list]

The Monitor list displays information at the level of individual monitors.
The data shown here will flesh out your individual monitors, and provide a quick
way to navigate to a more in-depth visualization for interesting hosts or endpoints.

This table includes information like the most recent status, when the monitor was last checked, its
ID and URL, its IP address, and a dedicated sparkline showing its check status over time.

[float]
=== Error list

[role="screenshot"]
image::uptime/images/error-list.png[Error list]

The Error list displays aggregations of errors that Heartbeat has logged. Errors are
displayed by Error type, monitor ID, and message. Clicking a monitor's ID will take you
to the corresponding Monitor view, which can provide you richer information about the individual
data points that are resulting in the displayed errors.
73 changes: 73 additions & 0 deletions docs/uptime/security.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
[role="xpack"]
[[uptime-security]]

== Use with Elasticsearch Security

If you use Elasticsearch security, you'll need to enable certain privileges for users
that would like to access the Uptime app. Below is an example of creating
a user and support role to implement those privileges.

[float]
=== Create a role

You'll need a role that lets you access the Heartbeat indices, which by default are `heartbeat-*`.
You can create this with the following request:

["source","sh",subs="attributes,callouts"]
---------------------------------------------------------------
PUT /_security/role/uptime
{ "indices" : [
{
"names" : [
"heartbeat-*"
],
"privileges" : [
"read",
"view_index_metadata"
],
"field_security" : {
"grant" : [
"*"
]
},
"allow_restricted_indices" : false
}
],
"applications" : [
{
"application" : "kibana-.kibana",
"privileges" : [
"all"
],
"resources" : [
"*"
]
}
],
"transient_metadata" : {
"enabled" : true
}
}
---------------------------------------------------------------
// CONSOLE

[float]
=== Assign the role to a user

Next, you'll need to create a user with both the `kibana_user`, and `uptime` roles.
You can do this with the following request:

["source","sh",subs="attributes,callouts"]
---------------------------------------------------------------
PUT /_security/user/jacknich
{
"password" : "j@rV1s",
"roles" : [ "uptime", "kibana_user" ],
"full_name" : "Jack Nicholson",
"email" : "[email protected]",
"metadata" : {
"intelligence" : 7
}
}
---------------------------------------------------------------
// CONSOLE

0 comments on commit 0271ae2

Please sign in to comment.