1 .** vim: ts=4 noet sw=42
3 ==================================================================================
4 Copyright (c) 2019-2020 Nokia
5 Copyright (c) 2018-2020 AT&T Intellectual Property.
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
11 http://www.apache.org/licenses/LICENSE-2.0
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 ==================================================================================
22 Mnemonic: env_list_vars.im
23 Abstract: This is a list of environment variables which are recognised
24 by RMR. This is an embed file as it is referenced by both
25 manual pages and the 'read the docs' source (allowing a single
26 point of maintenance).
28 Date: 6 November 2019 (broken from the main manual page)
29 Author: E. Scott Daniels
34 &beg_dlist(.75i : ^&bold_font )
35 &ditem(RMR_ASYNC_CONN) Allows the async connection mode to be turned off (by setting the
36 value to 0). When set to 1, or missing from the environment, RMR will invoke the
37 connection interface in the transport mechanism using the non-blocking (async)
38 mode. This will likely result in many "soft failures" (retry) until the connection
39 is established, but allows the application to continue unimpeded should the
40 connection be slow to set up.
42 &ditem(RMR_BIND_IF) This provides the interface that RMR will bind listen ports to, allowing
43 for a single interface to be used rather than listening across all interfaces.
44 This should be the IP address assigned to the interface that RMR should listen
45 on, and if not defined RMR will listen on all interfaces.
48 This variable defines the port that RMR should open for communications
49 with Route Manager, and other RMR control applications.
50 If not defined, the port 4561 is assumed.
53 Previously, the &cw(RMR_RTG_SVC) (route table generator service port)
54 was used to define this port.
55 However, a future version of Route Manager will require RMR to connect
56 and request tables, thus that variable is now used to supply the Route
57 Manager's well-known address and port.
60 To maintain backwards compatibility with the older Route Manager versions,
61 the presence of this variable in the environment will shift RMR's behaviour
62 with respect to the default value used when &cw(RMR_RTG_SVC) is &bold(not) defined.
65 When &cw(RMR_CTL_PORT) is &bold(defined^:)
66 RMR assumes that Route Manager requires RMR to connect and request table
67 updates is made, and the default well-known address for Route manager
68 is used (routemgr:4561).
71 When &cw(RMR_CTL_PORT) is &bold(undefined^:)
72 RMR assumes that Route Manager will connect and push table updates, thus the
73 default listen port (4561) is used.
76 To avoid any possible misinterpretation and/or incorrect assumptions on the part
77 of RMR, it is recommended that both the &cw(RMR_CTL_PORT) and &cw(RMR_RTG_SVC)
79 In the case where both variables are defined, RMR will behave exactly as is
80 communicated with the variable's values.
82 &ditem(RMR_RTREQ_FREQ)
83 When RMR needs a new route table it will send a request once every &cw(n) seconds.
84 The default value for &cw(n) is 5, but can be changed if this variable is set prior
85 to invoking the process.
86 Accepted values are between 1 and 300 inclusive.
89 The value of this variable depends on the Route Manager in use.
91 When the Route Manager is expecting to connect to an xAPP and push
92 route tables, this variable must indicate the &cw(port) which RMR should
93 use to listen for these connections.
96 When the Route Manager is expecting RMR to connect and request a
97 table update during initialisation, the variable should be the
98 &cw(host:port) of the Route Manager process.
101 The &cw(RMR_CTL_PORT) variable (added with the support of sending table update
102 requests to Route manager), controls the behaviour if this variable is not set.
103 See the description of that variable for details.
106 By default RMR writes messages to standard error (incorrectly referred to as log messages)
107 in human readable format.
108 If this environment variable is set to 0, the format of standard error messages might
109 be written in some format not easily read by humans.
110 If missing, a value of 1 is assumed.
112 &ditem(RMR_LOG_VLEVEL)
113 This is a numeric value which corresponds to the verbosity level used to limit messages
114 written to standard error.
115 The lower the number the less chatty RMR functions are during execution.
116 The following is the current relationship between the value set on this variable and
117 the messages written:
121 &beg_dlist(.25i : &bold_font )
122 &ditem(0) Off; no messages of any sort are written.
124 &ditem(1) Only critical messages are written (default if this variable does not exist)
126 &ditem(2) Errors and all messages written with a lower value.
128 &ditem(3) Warnings and all messages written with a lower value.
130 &ditem(4) Informational and all messages written with a lower value.
132 &ditem(5) Debugging mode -- all messages written, however this requires RMR to have
133 been compiled with debugging support enabled.
137 &ditem(RMR_RTG_ISRAW)
139 Should be set to 1 if the route table generator is sending "plain" messages
140 (not using RMR to send messages), 0 if the RTG is using RMR to send. The default
141 is 1 as we don't expect the RTG to use RMR.
143 This variable is only recognised when using the NNG transport library as
144 it is not possible to support NNG "raw" communications with other transport
145 libraries. It is also necessary to match the value of this variable
146 with the capabilities of the Route Manager; at some point in the future
147 RMR will assume that all Route Manager messages will arrive via an RMR
148 connection and will ignore this variable.
150 &ditem(RMR_SEED_RT) This is used to supply a static route table which can be used for
151 debugging, testing, or if no route table generator process is being used to
152 supply the route table.
153 If not defined, no static table is used and RMR will not report &ital(ready)
154 until a table is received.
155 The static route table may contain both the route table (between newrt start
156 and end records), and the MEID map (between meid_map start and end records).
158 &ditem(RMR_SRC_ID) This is either the name or IP address which is placed into outbound
159 messages as the message source. This will used when an RMR based application uses
160 the rmr_rts_msg() function to return a response to the sender. If not supplied
161 RMR will use the hostname which in some container environments might not be
164 The value of this variable is also used for Route Manager messages which are
165 sent via an RMR connection.
167 &ditem(RMR_STASH_RT) Names the file where RMR should write the latest update it receives
168 from the source of route tables (generally Route Manager). This is meant
169 to assist with debugging and/or troubleshooting when it is suspected that
170 route information isn't being sent and/or received correctly. If this variable
171 is not given, RMR will save the last update using the &cw(RMR_SEED_RT) variable
172 value and adding a &cw(.stash) suffix to the filename so as not to overwrite
175 &ditem(RMR_VCTL_FILE) This supplies the name of a verbosity control file. The core
176 RMR functions do not produce messages unless there is a critical failure. However,
177 the route table collection thread, not a part of the main message processing
178 component, can write additional messages to standard error. If this variable is
179 set, RMR will extract the verbosity level for these messages (0 is silent) from
180 the first line of the file. Changes to the file are detected and thus the level
181 can be changed dynamically, however RMR will only suss out this variable during
182 initialisation, so it is impossible to enable verbosity after startup.
184 &ditem(RMR_WARNINGS) If set to 1, RMR will write some warnings which are non-performance
185 impacting. If the variable is not defined, or set to 0, RMR will not write these