Skip to content
This repository was archived by the owner on Sep 2, 2025. It is now read-only.

Commit d90eca5

Browse files
authored
Merge pull request #2545 from splunk/adasplunk-O11YDOCS-6868
[O11YDOCS-6868] Private locations outline
2 parents 29300d0 + f66328e commit d90eca5

File tree

1 file changed

+74
-85
lines changed

1 file changed

+74
-85
lines changed

synthetics/test-config/private-locations.rst

Lines changed: 74 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
.. _private-locations:
22

3-
*****************
3+
***************************
44
Private locations
5-
*****************
5+
***************************
66

77
.. meta::
88
:description: Run synthetic tests from private locations such as internal sites, private web applications, or private networks.
@@ -23,19 +23,79 @@ To summarize, here are sample use cases for private locations:
2323
* Test from locations not currently supported by Splunk Synthetic Monitoring's public locations.
2424

2525

26-
What is a private runner?
27-
================================
26+
Set up a new private location
27+
=====================================
28+
29+
Follow these steps to set up a new private location:
30+
31+
1. In Splunk Synthetic Monitoring, select the settings gear icon, then :guilabel:`Private locations`.
32+
2. Select :guilabel:`+ Add` and add a name.
33+
3. Follow the steps in the guided setup to set up one or more private runners for that private location.
34+
4. Save your private location.
2835

29-
A private runner is a Docker image which you deploy on your own infrastructure, within your own internal network. It picks up test runs from the queue of tests assigned to its associated private location, performs the actions in the test run on the test target, and reports the results back to Splunk Synthetic Monitoring.
3036

37+
What you can do with your private location ID
38+
------------------------------------------------------------
3139

32-
If you create multiple private runners for a private location, they can process that location's test queue faster. Splunk Synthetic Monitoring doesn't track how many private runners there are for a given private location. It's up to you to manage your own fleet of private runners.
40+
Each private location has a corresponding private location ID. With this ID, you can:
3341

42+
* Build charts or dashboards
43+
* Search for metrics by private location
44+
* Refer to your private location ID if you're interacting with the Splunk Synthetics Monitoring APIs.
3445

35-
Requirements for private runners
36-
==========================================
46+
Manage your tokens
47+
--------------------------------
48+
It is your responsibility to update and manage your tokens. Tokens are valid for one year. For added security, create a secret environment variable for your token in Docker. Consider creating a second token to provide coverage before your first token expires. You are not notified of expiring tokens.
49+
50+
Assess the health of a private location
51+
---------------------------------------------------------
52+
53+
A private location's health depends on three factors:
54+
55+
.. list-table::
56+
:header-rows: 1
57+
:widths: 20 40 40
58+
59+
* - :strong:`Factor`
60+
- :strong:`Description`
61+
- :strong:`Solution`
62+
* - Active runner
63+
- At least one runner is actively checking in.
64+
- If no runners are checking in, set up new runners for the private location.
65+
* - Used in tests
66+
- The private location is currently being used in one or more tests.
67+
- If you need to delete a private location, you need to first delete it from all tests.
68+
* - Clear queue
69+
- The queue for a given location is being cleared periodically and is not backed up.
70+
- If the queue is backed up, add new runners to the private location.
3771

3872

73+
Troubleshoot queue length and latency
74+
---------------------------------------------------
75+
76+
If both the queue latency and length increase over time, then add more runners to improve performance.
77+
78+
If your queue latency increases but your queue length doesn't, try these troubleshooting methods:
79+
80+
* Check to see if a step is delaying the rest of the test.
81+
* Investigate whether you have the sufficient resources to run private location runners on your machines.
82+
83+
The maximum number of runs in a queue is 100,000.
84+
85+
Any runs older than one hour are removed from the queue.
86+
87+
88+
Private runners
89+
=====================================
90+
91+
A private runner queries Splunk Synthetic Monitoring for tests configured to run in its inherent private location, performs the test's steps on your private target, and reports the results back to Splunk Synthetic Monitoring. Because a private runner must have access to your private target, it is a Docker image which you deploy on your own infrastructure, within your own internal network. See :ref:`private-locations`.
92+
93+
If you deploy multiple private runners on behalf of a single private location, they can process that location's test queue faster. Splunk Synthetic Monitoring doesn't track how many private runners you've deployed for a given private location. It's up to you to manage your own fleet of private runners.
94+
95+
96+
Requirements for private runners
97+
-------------------------------------
98+
3999
.. list-table::
40100
:header-rows: 1
41101
:widths: 20 80
@@ -64,39 +124,10 @@ For optimal performance when running browser tests:
64124
* 8 GB RAM, 2 cores
65125

66126

67-
Set up a new private location
68-
=====================================
69-
70-
Follow these steps to set up a new private location:
71-
72-
1. In Splunk Synthetic Monitoring, select the settings gear icon, then :guilabel:`Private locations`.
73-
2. Select :guilabel:`+ Add` and add a name.
74-
3. Follow the steps in the guided setup to set up one or more private runners for that private location.
75-
4. Save your private location.
76-
77-
78-
What you can do with your private location ID
79-
------------------------------------------------------------
80-
81-
Each private location has a corresponding private location ID. With this ID, you can:
82-
83-
* Build charts or dashboards
84-
* Search for metrics by private location
85-
* Refer to your private location ID if you're interacting with the Splunk Synthetics Monitoring APIs.
86-
87-
Manage your tokens
88-
--------------------
89-
It is your responsibility to update and manage your tokens. Tokens are valid for one year. For added security, create a secret environment variable for your token in Docker. Consider creating a second token to provide coverage before your first token expires. You are not notified of expiring tokens.
90-
91-
92127
Working with Docker
93-
======================================
94-
Here is some guidance for working with Docker.
95-
96-
Limit logging in Docker
97-
------------------------------------
128+
-------------------------------------
98129

99-
Follow these steps to limit logging:
130+
Follow these steps to limit logging in Docker:
100131

101132
#. Create a file in a directory like this: ``/etc/docker/daemon.json``.
102133

@@ -115,9 +146,9 @@ Follow these steps to limit logging:
115146
#. Restart your docker service: ``sudo systemctl docker.service restart``.
116147

117148

149+
Add certificates
150+
-------------------------------------
118151

119-
Add certificates in Synthetics
120-
------------------------------------------------------
121152
Splunk Synthetic Monitoring supports injecting custom root CA certificates for Uptime tests running from your private locations. Client keys and certificates aren't supported at this time.
122153

123154
#. Create a folder called ``certs`` on your host machine and place the CA Certificate (in CRT format) in the folder.
@@ -137,12 +168,8 @@ For example, here is what a command might look like after you modify it to fit y
137168
.. Note:: Custom root CA certificates aren't supported for Browser tests. Browser tests require SSL/TLS validation for accurate testing. Optionally, you can deactivate SSL/TLS validation for Browser tests when necessary.
138169

139170

140-
141-
142-
143-
144-
Configure proxy settings for a private location
145-
===================================================
171+
Configure proxy settings for a private runner
172+
---------------------------------------------------------
146173

147174
In environments where direct internet access is restricted, you can route synthetic test traffic through a proxy server by configuring the following environment variables:
148175

@@ -193,41 +220,3 @@ When using a private runner, it's important to correctly configure the proxy set
193220
.. note::
194221
Lower case variable names take precedence and are best practice.
195222

196-
197-
Assess the health of a private location
198-
==============================================
199-
200-
A private location's health depends on three factors:
201-
202-
.. list-table::
203-
:header-rows: 1
204-
:widths: 20 40 40
205-
206-
* - :strong:`Factor`
207-
- :strong:`Description`
208-
- :strong:`Solution`
209-
* - Active runner
210-
- At least one runner is actively checking in.
211-
- If no runners are checking in, set up new runners for the private location.
212-
* - Used in tests
213-
- The private location is currently being used in one or more tests.
214-
- If you need to delete a private location, you need to first delete it from all tests.
215-
* - Clear queue
216-
- The queue for a given location is being cleared periodically and is not backed up.
217-
- If the queue is backed up, add new runners to the private location.
218-
219-
Troubleshoot queue length and latency
220-
---------------------------------------------------
221-
222-
If both the queue latency and length increase over time, then add more runners to improve performance.
223-
224-
If your queue latency increases but your queue length doesn't, then try these troubleshooting methods:
225-
226-
* Check to see if a step is delaying the rest of the test
227-
* Investigate whether you have the sufficient resources to run private location runners on your machines.
228-
229-
The maximum number of runs in a queue is 100,000.
230-
231-
Any runs older than one hour are removed from the queue.
232-
233-

0 commit comments

Comments
 (0)