You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The logger will write log messages to standard out. When `debug` is false, the log messages will also be written to `${MPF_LOG_PATH}/${THIS_MPF_NODE}/log/<log_file_name>.log` Note that multiple instances of the same component
1196
-
can log to the same file. Also, logging content can span multiple lines. The following log levels are supported:
1197
-
`FATAL, ERROR, WARN, INFO, DEBUG`.
1195
+
It recommended that components use Python's built-in
1196
+
[`logging` module.](https://docs.python.org/3/library/logging.html) The component should
1197
+
`import logging` and call `logging.getLogger('<componentName>')` to get a logger instance.
1198
+
The component should not configure logging itself. The component executor will configure the
1199
+
`logging` module for the component. The logger will write log messages to standard error and
1200
+
`${MPF_LOG_PATH}/${THIS_MPF_NODE}/log/<componentName>.log`. Note that multiple instances of the
1201
+
same component can log to the same file. Also, logging content can span multiple lines.
1202
+
1203
+
The following log levels are supported: `FATAL, ERROR, WARN, INFO, DEBUG`.
1204
+
The `LOG_LEVEL` environment variable can be set to one of the log levels to change the logging
1205
+
verbosity. When `LOG_LEVEL` is absent, `INFO` is used.
Copy file name to clipboardExpand all lines: docs/docs/Release-Notes.md
+40Lines changed: 40 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,45 @@
1
1
> **NOTICE:** This software (or technical data) was produced for the U.S. Government under contract, and is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2021 The MITRE Corporation. All Rights Reserved.
2
2
3
+
# OpenMPF TBD: XXX
4
+
5
+
<h2>OpenMPF Command Line Runner</h2>
6
+
7
+
- The Command Line Runner allows users to run jobs with a single component without the
8
+
Workflow Manager.
9
+
- It outputs results in a JSON structure that is a subset of the regular OpenMPF output.
- Component code should no longer configure Log4CXX. The component executor now handles
17
+
configuring Log4CXX. Component code should call `log4cxx::Logger::getLogger("<component-name>")`
18
+
to get access to the logger. Calls to `log4cxx::xml::DOMConfigurator::configure(logconfig_file);`
19
+
should be removed.
20
+
21
+
22
+
<h2>Python Batch Component API </h2>
23
+
- Component code should no longer configure logging. The component executor now handles
24
+
configuring logging. Calls to `mpf.configure_logging` should be replaced with
25
+
`logging.getLogger('<component-name>')`.
26
+
27
+
28
+
<h2>Docker Component Base Images</h2>
29
+
- In order to support running a component through the CLI runner, C++ component developers should
30
+
set the `LD_LIBRARY_PATH` environment variable in the final stage of their Dockerfiles. It should
31
+
generally be set like: `ENV LD_LIBRARY_PATH $PLUGINS_DIR/<component-name>/lib`.
32
+
33
+
- Because of the logging changes mentioned above, components no longer need to set the
34
+
`COMPONENT_LOG_NAME` environment variable in their Dockerfiles.
35
+
36
+
- Added the
37
+
[`openmpf_python_executor_ssb` base image](https://github.com/openmpf/openmpf-docker/blob/master/components/python/README.md#openmpf_python_executor_ssb).
38
+
It can be used instead of `openmpf_python_component_build` and `openmpf_python_executor` to
39
+
simplify Dockerfiles for Python components that are pure Python and have no build time
Copy file name to clipboardExpand all lines: docs/docs/User-Guide.md
+10-3Lines changed: 10 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,11 +5,18 @@ Copyright 2021 The MITRE Corporation. All Rights Reserved.
5
5
6
6
# General
7
7
8
+
The Open Media Processing Framework (OpenMPF) can be used in three ways:
9
+
10
+
* Through the OpenMPF Web user interface (UI)
11
+
* Through the [REST API endpoints](#rest-api)
12
+
* Through the [CLI Runner](https://github.com/openmpf/openmpf-docker/blob/master/CLI_RUNNER.md)
13
+
14
+
8
15
## Accessing the Web UI
9
16
10
-
On the server hosting the Open Media Processing Framework (OpenMPF), the Web UI is accessible at http://localhost:8080/workflow-manager. To access it from other machines, substitute the hostname or IP address of the master node server in place of "localhost".
17
+
On the server hosting the Open Media Processing Framework, the Web UI is accessible at http://localhost:8080/workflow-manager. To access it from other machines, substitute the hostname or IP address of the master node server in place of "localhost".
11
18
12
-
The OpenMPF user interface (UI) was designed and tested for use with Chrome and FireFox. It has not been tested with other browsers. Attempting to use an unsupported browser will result in a warning.
19
+
The OpenMPF user interface was designed and tested for use with Chrome and FireFox. It has not been tested with other browsers. Attempting to use an unsupported browser will result in a warning.
13
20
14
21
## Logging In
15
22
@@ -190,7 +197,7 @@ The "Processes" tab on this page allows a user to view a table with information
190
197
191
198
## REST API
192
199
193
-
This page allows a user to try out the various REST API endpoints provided by the workflow manager. It is intended to serve as a learning tool for technical users who wish to design and build systems that interact with the OpenMPF.
200
+
This page allows a user to try out the [various REST API endpoints](REST-API) provided by the workflow manager. It is intended to serve as a learning tool for technical users who wish to design and build systems that interact with the OpenMPF.
194
201
195
202
After selecting a functional category, such as "meta", "jobs", "statistics", "nodes", "pipelines", or "system-message", each REST endpoint for that category is shown in a list. Selecting one of them will cause it to expand and reveal more information about the request and response structures. If the request takes any parameters then a section will appear that allows the user to manually specify them.
0 commit comments