-
Notifications
You must be signed in to change notification settings - Fork 18
/
oltpplot.html
373 lines (269 loc) · 12.4 KB
/
oltpplot.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
<!-- Creator : groff version 1.22.3 -->
<!-- CreationDate: Wed May 15 16:34:57 2024 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="generator" content="groff -Thtml, see www.gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="Content-Style" content="text/css">
<style type="text/css">
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
h1 { text-align: center }
</style>
<title>oltpplot</title>
</head>
<body>
<h1 align="center">oltpplot</h1>
<a href="#NAME">NAME</a><br>
<a href="#SYNOPSIS">SYNOPSIS</a><br>
<a href="#OPTIONS">OPTIONS</a><br>
<a href="#USAGE">USAGE</a><br>
<a href="#EXAMPLES">EXAMPLES</a><br>
<a href="#NOTES">NOTES</a><br>
<a href="#COPYRIGHT">COPYRIGHT</a><br>
<a href="#SEE ALSO">SEE ALSO</a><br>
<hr>
<h2>NAME
<a name="NAME"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em">oltpplot
− Create html and graphics for a single run</p>
<h2>SYNOPSIS
<a name="SYNOPSIS"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em"><b>oltpplot
[--xfile|--Xfile filename] [-x|-X|--xmarker|--xline
’time text’] [-c|--xcolor rgbname]
[--ses-y{2}range ’[ .. ]’] [--ses-simplified]
[--res-y{2}range ’[ .. ]’] [--ash-yrange
’[ .. ]’] [--gnuplot-extra file]
[--no-awr-interval] [--no-titlerunnumber] [--no-client-cpu]
[--xlabel ’text’] [--no-x2label] [--titletext
’text’] [--e2e-no-logscale]
[--fractiles-dropped] [-k|--key key] [-l|--latest|[-r]
runnumber]</b></p>
<p style="margin-left:11%; margin-top: 1em">Recreate the
report that was created using <b>oltprun</b> with possible
changes to contents, axes and/or potentially adding named
markers or vertical lines.</p>
<h2>OPTIONS
<a name="OPTIONS"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em"><b>-h|-H|--help</b></p>
<p style="margin-left:17%;">Print short help.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--res-yrange
’[ .. ]’ <br>
--res-y2range ’[ .. ]’ <br>
--ses-yrange ’[ .. ]’ <br>
--ses-y2range ’[ .. ]’ <br>
--ash-yrange ’[ .. ]’</b></p>
<p style="margin-left:17%;">By default the ranges of the
left and right y-axes in the various plots are set to be
"reasonable". The first two options will
explicitly set different ranges in the first plot of
resources (dbcpu and dbtime) on the left y-axis or
throughput on the right y-axis. The second two options
explicitly set different ranges in the second plot of
sessions on the left y-axis (database open/active sessions)
or right y-axis (instance distribution). The last option
will set the left y-axis range (session count) for the ash
plot. The argument to these options must be a valid gnuplot
argument for a range such as [0:*], [0:20] or similar and it
should typically be enclosed in quotes to prevent shell
expansion.</p>
<p style="margin-left:11%; margin-top: 1em"><b>-x|--xmarker
’time text’</b></p>
<p style="margin-left:17%;">Put a named marker on the
x-axis of all relevant plots at some time. The time must be
in either UTC time in YYYY.MM.DD"T"HH24:MI:SS
format (as defined by Oracle) or it must be a positive
number of seconds. The marker will be placed at the
appropriate position on the x-axis and will have an
associated name printed with it; the name text can be empty
in which case only the marker is printed. Note that the
whole option value must be provided as one shell argument
and that it therefore will need to be quoted by the
shell.</p>
<p style="margin-left:17%; margin-top: 1em">The option can
be repeated if you want to print several markers, and you
can mix the two ways to specify the time if needed.</p>
<p style="margin-left:11%; margin-top: 1em"><b>-X|--xline
’time text’</b></p>
<p style="margin-left:17%;">Similar to the -x option except
a vertical line spanning the whole range of the y-axis is
printed.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--xfile|--Xfile
filename</b></p>
<p style="margin-left:17%;">In stead of providing the time
and the text as a shell argument, you can have a number of
these combinations stored on individual lines in a text
file. Each line must have a time per the above (seconds or
UTC) followed by a blank and the wanted text. No other
contents may be in the file.</p>
<p style="margin-left:17%; margin-top: 1em">The difference
between --xfile and --Xfile is like the difference between
--xmarker and --xline.</p>
<p style="margin-left:17%; margin-top: 1em">You can use
either of the four options repeatedly.</p>
<p style="margin-left:11%; margin-top: 1em"><b>-c|--xcolor
rgbname</b></p>
<p style="margin-left:17%;">By default, these markers and
lines are printed by gnuplot using the rgb name of
’blue’; you can use this option to choose any
other valid rgb name.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--gnuplot-extra
file</b></p>
<p style="margin-left:17%;">The contents of the named file
will be added as extra contents to all gnuplot input files.
It can contain any valid gnuplot commands and can be used to
add any extra decoration to the generated graphics.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--no-awr-interval</b></p>
<p style="margin-left:17%;">By default, all generated
graphics will indicate the time taken to do the initial and
finishing awr snapshots. This option turns that graphics
off.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--no-client-cpu</b></p>
<p style="margin-left:17%;">By default, the client cpu
utilization is included on the graph with throughtput and
resources. With this option, the client cpu it not
included.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--no-titlerunnumber</b></p>
<p style="margin-left:17%;">By default, all generated
graphics includes the runnumber in the title. This option
turns that off.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--xlabel
’some text’</b></p>
<p style="margin-left:17%;">By default most graphics have
an xlabel with the text "seconds since " followed
by the date of the run. By using this option, you can supply
any other text.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--no-x2label</b></p>
<p style="margin-left:17%;">By default, timestamps (without
date part) will be printed above selected graphs. With this
option, these timestamps will not be printed.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--ses-simplified</b></p>
<p style="margin-left:17%;">The graph showing sessions and
- if relevant - ranges for the size of the pools is
simplified and does not contain the distribution of sessions
on instances.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--e2e-no-logscale</b></p>
<p style="margin-left:17%;">The graphs showing end-to-end
timing for the various emulated business transactions is by
default using a logarithmic time axes to cater for large
variation or large differences between the end-to-end
components. If you do not have such large variations or
differences, you can use this option to use a regular linear
scale.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--fractiles-dropped</b></p>
<p style="margin-left:17%;">Whenever your run is with a
time_out value set, there might by dropped transactions.
When generating the plot of execution time fractiles, such
dropped transactions are <i>not</i> included. Whether this
is the correct thing to do or not is surely debatable. By
using this option, dropped transactions are assumed to
"cost" 2s, typically causing the high range
fractiles (e.g. 98%, 99%) to be very high.</p>
<p style="margin-left:11%; margin-top: 1em"><b>--titletext
’some text’</b></p>
<p style="margin-left:17%;">By default, all generated
graphics has that title that include the key and the komment
from running oltprun. With this option, you can provide any
other text.</p>
<p style="margin-left:11%; margin-top: 1em"><b>-l|--latest</b></p>
<p style="margin-left:17%;">You can provide this option as
an alternative to an actual runnumber, which causes the
latest run from the current host to be used.</p>
<p style="margin-left:11%; margin-top: 1em"><b>-k|--key
key</b></p>
<p style="margin-left:17%;">Provide a key in the repository
rather than the default taken from the RWLOLTP_NAME
environment variable. This option is only relevant if you
also use the -l or --latest option.</p>
<h2>USAGE
<a name="USAGE"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em">You normally
don’t need to call this directly; it is automatically
called after each execution of <b>oltprun</b> to create the
standard graphs.</p>
<p style="margin-left:11%; margin-top: 1em">The primary
purpose of the command is to allow various changes to the
graphs including changes to the ranges, changes to contents,
changes to texts using options beginnig with --ses, --res,
--no, etc. You can also augment the various graphs with
information about certain events during the run, you can do
so by calling <b>oltpplot</b> with one or more of the -x or
-X options.</p>
<p style="margin-left:11%; margin-top: 1em">To create a
useful string for a date representation for either option,
you can call</p>
<pre style="margin-left:11%; margin-top: 1em">date -u +%Y.%m.%dT%H:%M:%S</pre>
<h2>EXAMPLES
<a name="EXAMPLES"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em">If you find
that your latest run was using a y-axis for the database cpu
and time that was inappropriate, you can recreate the
graphs, also providing a different text on them, using a
command like</p>
<pre style="margin-left:11%; margin-top: 1em">oltpplot --res-yrange=’[0:20]’ -l --titletext=’changed y range’</pre>
<p style="margin-left:11%; margin-top: 1em">which will
cause the y-axis on the throughput and resources graph to
have the range 0-20 seconds. Note that the actual range
typically needs to be quoted to prevent shell expansion.</p>
<p style="margin-left:11%; margin-top: 1em">If you had a
run with number 12345 starting on 2021.12.31 just before
midnight and you want to add a vertical line to the plots at
exactly midnight, you can recreate the graphs using</p>
<pre style="margin-left:11%; margin-top: 1em">oltpplot --xline ’2022.01.01T00:00:00 celebrate new year’ 12345</pre>
<p style="margin-left:11%; margin-top: 1em">If you know
that 110s and 140s into the last run you did, there were
some external events and you want those external event to be
shown on the graphs in red, you can recreate graphs
using</p>
<pre style="margin-left:11%; margin-top: 1em">oltpplot -x ’110 Something happened’ -x ’140 Something else’ -c red -l</pre>
<p style="margin-left:11%; margin-top: 1em">The previous
example could alternatively be created via a file named
m.txt with just these two lines:</p>
<pre style="margin-left:11%; margin-top: 1em">110 Something happened
140 Something else</pre>
<p style="margin-left:11%; margin-top: 1em">and running</p>
<pre style="margin-left:11%; margin-top: 1em">oltpplot -xfile m.txt -c red -l</pre>
<p style="margin-left:11%; margin-top: 1em">If you are
using srvctl to relocate a service during a run, and you
want to mark the start and finish of the relocate on the
graphs, use a shell script that includes something like
this:</p>
<pre style="margin-left:11%; margin-top: 1em">date -u +%Y.%m.%dT%H:%M:%S
srvctl relocate service ... -wait
date -u +%Y.%m.%dT%H:%M:%S</pre>
<p style="margin-left:11%; margin-top: 1em">After the run,
you recreate the graphs for the run with information about
the start and completion of the relocate by using the output
from the two calls to date in your shell script as the time
in the --xmarker options to oltprun.</p>
<h2>NOTES
<a name="NOTES"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em">If you want to
provide an actual runnumber, this can be done either using
the -r option or simply as (the only) non option
argument.</p>
<h2>COPYRIGHT
<a name="COPYRIGHT"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em">Copyright
© 2023 Oracle Corporation <br>
Licensed under the Universal Permissive License v 1.0 as
shown at https://oss.oracle.com/licenses/upl</p>
<h2>SEE ALSO
<a name="SEE ALSO"></a>
</h2>
<p style="margin-left:11%; margin-top: 1em"><a href="oltp.html">oltp(2rwl)</a>,
<a href="oltprun.html">oltprun(2rwl)</a>, <a href="oltpkomment.html">oltpkomment(2rwl)</a></p>
<hr>
</body>
</html>