Annotation of freem/doc/env.conf.5, revision 1.3

1.1       snw         1: .\" To display this man page, either:
                      2: .\"   1) Install this file along with the other subject.1 files in your
                      3: .\"      system's man1 directory (usually this is /usr/man/man1) and
                      4: .\"      enter the command:
                      5: .\"        man freem
                      6: .\"   or
                      7: .\"   2) Specify the input (this file) and the output (your favorite pager)
                      8: .\"      explicitly.  For example, if this file is in your current working
                      9: .\"      directory, you can use the following to view the formatted man page
                     10: .\"      using the "less" pager:
                     11: .\"        man ./freem.1 | less
                     12: .\"
                     13: .\" To print this man page to a PostScript printer:
                     14: .\"   man -t ./freem.1 | lpr
                     15: .\"
1.3     ! snw        16: .\"   $Id: env.conf.5,v 1.2 2025/04/17 17:57:35 snw Exp $
1.1       snw        17: .\"    FreeM env.conf man page
                     18: .\"
                     19: .\"  
                     20: .\"   Author: Serena Willis <snw@coherent-logic.com>
                     21: .\"    Copyright (C) 1998 MUG Deutschland
                     22: .\"    Copyright (C) 2020, 2025 Coherent Logic Development LLC
                     23: .\"
                     24: .\"
                     25: .\"   This file is part of FreeM.
                     26: .\"
                     27: .\"   FreeM is free software: you can redistribute it and/or modify
                     28: .\"   it under the terms of the GNU Affero Public License as published by
                     29: .\"   the Free Software Foundation, either version 3 of the License, or
                     30: .\"   (at your option) any later version.
                     31: .\"
                     32: .\"   FreeM is distributed in the hope that it will be useful,
                     33: .\"   but WITHOUT ANY WARRANTY; without even the implied warranty of
                     34: .\"   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     35: .\"   GNU Affero Public License for more details.
                     36: .\"
                     37: .\"   You should have received a copy of the GNU Affero Public License
                     38: .\"   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
                     39: .\"
1.2       snw        40: .\"   $Log: env.conf.5,v $
1.3     ! snw        41: .\"   Revision 1.2  2025/04/17 17:57:35  snw
        !            42: .\"   Major updates to man pages
        !            43: .\"
1.2       snw        44: .\"   Revision 1.1  2025/04/17 15:55:21  snw
                     45: .\"   Add env.conf man page
                     46: .\"
1.1       snw        47: .\"
                     48: .TH env.conf 5 "17 April 2025" FreeM "FreeM User Manual"
                     49: .SH NAME
1.2       snw        50: env.conf - FreeM environment catalog
1.1       snw        51: .SH DESCRIPTION
                     52: .PP
                     53: $PREFIX/etc/env.conf
                     54: contains configuration information for FreeM environments.
                     55: 
                     56: A FreeM environment is a collection of FreeM resources comprising the following elements:
                     57: .sp
                     58: .RS 4
                     59: .ie n \{\
                     60: \h'-04'\(bu\h'+03'\c
                     61: .\}
                     62: .el \{\
                     63: .sp -1
                     64: .IP \(bu 2.3
                     65: .\}
                     66: One and only one environment daemon responsible for managing shared environment resources, including the lock table, job table, memory-backed globals, and inter-process communication
                     67: .RE
                     68: .sp
                     69: .RS 4
                     70: .ie n \{\
                     71: \h'-04'\(bu\h'+03'\c
                     72: .\}
                     73: .el \{\
                     74: .sp -1
                     75: .IP \(bu 2.3
                     76: .\}
                     77: At least two namespaces: minimally,
                     78: \fISYSTEM\fR
                     79: and
                     80: \fIUSER\fR
                     81: .RE
                     82: .sp
                     83: .RS 4
                     84: .ie n \{\
                     85: \h'-04'\(bu\h'+03'\c
                     86: .\}
                     87: .el \{\
                     88: .sp -1
                     89: .IP \(bu 2.3
                     90: .\}
                     91: A set of pre-installed vendor routines located in the environment's
                     92: \fISYSTEM\fR
                     93: namespace.
                     94: .RE
                     95: .sp
                     96: .RS 4
                     97: .ie n \{\
                     98: \h'-04'\(bu\h'+03'\c
                     99: .\}
                    100: .el \{\
                    101: .sp -1
                    102: .IP \(bu 2.3
                    103: .\}
                    104: Zero or more instances of the FreeM interpreter running M application code
                    105: .RE
                    106: .sp
                    107: .RS 4
                    108: .ie n \{\
                    109: \h'-04'\(bu\h'+03'\c
                    110: .\}
                    111: .el \{\
                    112: .sp -1
                    113: .IP \(bu 2.3
                    114: .\}
                    115: Zero or more fmadm processes for managing the environment
                    116: .RE
                    117: .sp
                    118: .RS 4
                    119: .ie n \{\
                    120: \h'-04'\(bu\h'+03'\c
                    121: .\}
                    122: .el \{\
                    123: .sp -1
                    124: .IP \(bu 2.3
                    125: .\}
                    126: Optionally, an after-image journal, providing recoverability under certain abnormal conditions
                    127: .RE
                    128: .PP
                    129: The file is organized into a series of sections, such as
                    130: \fI[DEFAULT]\fR
                    131: , indicating the environment name to which the configuration values beneath it will apply
                    132: .RE
                    133: .SH CONFIGURABLE OPTIONS
                    134: .TP
                    135: user
1.2       snw       136: .RS 4
1.1       snw       137: The user account under which the environment will run - the default is
                    138: \fIfreem\fR
1.2       snw       139: .RE
1.1       snw       140: .TP
                    141: group
1.2       snw       142: .RS 4
1.1       snw       143: The group under which the environment will run - note that any users wishing to interact with the environment will need to belong to this group, and the default is
1.2       snw       144: .RE
1.1       snw       145: \fIfreem\fR
                    146: .TP
                    147: enabled
1.2       snw       148: .RS 4
1.1       snw       149: A
                    150: \fItrue\fR
                    151: or
                    152: \fIfalse\fR
                    153: value indicating whether or not the environment is administratively enabled - default is
                    154: \fItrue\fR
1.2       snw       155: .RE
1.1       snw       156: .TP
                    157: env_path
1.2       snw       158: .RS 4
1.1       snw       159: An absolute filesystem path to the root of the filesystem - default is
                    160: \fI$PREFIX/var/freem/<environment-name>\fR
1.2       snw       161: .RE
1.1       snw       162: .TP
                    163: log_threshold_file
1.2       snw       164: .RS 4
1.1       snw       165: The minimum threshold at which log messages will be sent to
                    166: \fI/var/log/freem/<environment-name>.log\fR
1.2       snw       167: (may be overridden for a specific process by setting the
                    168: \fI$FREEM_LOG_THRESHOLD_FILE\fR
                    169: environment variable prior to launching the process)
1.1       snw       170: 
                    171: (see the
1.2       snw       172: \fBLOG THRESHOLD VALUES\fR
                    173: section for details)
                    174: .RE
1.1       snw       175: .TP
                    176: log_threshold_syslog
1.2       snw       177: .RS 4
1.1       snw       178: The minimum threshold at which log messages will be sent to the system's
                    179: \fIsyslog\fR
                    180: facility, if supported on your platform
1.2       snw       181: (may be overridden for a specific process by setting the
                    182: \fI$FREEM_LOG_THRESHOLD_SYSLOG\fR
                    183: environment variable prior to launching the process)
1.1       snw       184: 
                    185: (see the
1.2       snw       186: \fBLOG THRESHOLD VALUES\fR
                    187: section for details)
                    188: .RE
1.1       snw       189: .TP
                    190: log_threshold_stderr
1.2       snw       191: .RS 4
1.1       snw       192: The minimum threshold at which log messages will be echoed to
                    193: \fIstderr\fR
1.2       snw       194: (may be overridden for a specific process by setting the
                    195: \fI$FREEM_LOG_THRESHOLD_STDERR\fR
                    196: environment variable prior to launching the process)
1.1       snw       197: 
                    198: (see the
1.2       snw       199: \fBLOG THRESHOLD VALUES\fR
                    200: section for details)
                    201: .RE
                    202: .SH LOG THRESHOLD VALUES
                    203: This section details the valid values for each of the
                    204: \fIlog_threshold_*\fR
                    205: values, and each value indicates a minimum diagnostic level at which the indicated class of message will be delivered through the selected mechanism. All messages with an equal or higher diagnostic level than the class indicated will be delivered, i.e., if
                    206: \fIwarning\fR
                    207: is selected, messages with a diagnostic class of
                    208: \fIwarning, error, and fatal\fR
                    209: will be delivered through the selected mechanism.
                    210: 
                    211: Valid values for each of these configuration keys are as follows:
                    212: .TP
                    213: debug
                    214: .RS 4
                    215: Messages useful mostly for developers contributing to FreeM itself. Will produce a high volume of log messages, and is likely to impact system performance. Not recommended for production usage.
                    216: .RE
                    217: .TP
                    218: info
                    219: .RS 4
                    220: Includes messages of an informational nature. Will produce a moderately high volume of log messages. For heavily multi-user and multi-process systems, it is recommended to use
                    221: \fIwarning\fR
                    222: instead.
                    223: .RE
                    224: .TP
                    225: warning
                    226: .RS 4
                    227: Includes warning messages. These indicate conditions (including retries when attempting to acquire semaphores) that warrant further investigation by the system operator, but do not typically prevent applications from running.
                    228: .RE
                    229: .TP
                    230: error
                    231: .RS 4
                    232: Includes error messages. This class of messages indicates that a recoverable error has occurred in the FreeM engine. Warrants immediate attention by the system operator.
                    233: .RE
                    234: .TP
                    235: fatal
                    236: .RS 4
                    237: Includes messages indicating errors that are not recoverable. If this class of message occurs, the process that triggered the message has terminated abnormally. Requires immediate system operator intervention, and can indicate gross misconfiguration of the FreeM engine or the host operating system environment, or even a FreeM bug.
                    238: .RE
1.3     ! snw       239: .SH AUTHOR
        !           240: Written by Serena Willis (snw@coherent-logic.com)
        !           241: .SH COPYRIGHT
        !           242: Copyright (C) 2025 Coherent Logic Development LLC
        !           243: 
        !           244: Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover texts, and with no Back-Cover Texts.
        !           245: 
1.2       snw       246: .SH "FILES"
                    247: .PP
                    248: $PREFIX/etc/freem/env.conf
                    249: .RS 4
                    250: FreeM environment catalog
                    251: .RE
                    252: .SH "SEE ALSO"
                    253: .PP
                    254: \fBfreem\fR(1),
                    255: \fBfmadm\fR(8),
                    256: \fBfreem.conf\fR(5)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>