alog 命令

用途

创建并维护创建自标准输入的固定大小的日志文件。

语法

显示日志文件的内容
alog { -f LogFile | -t LogType } -o
将数据记录到指定的日志文件
alog { [-f logfile] [-t LogType] } [ [ -q ] [ -s Size ] ]
显示指定日志类型的详细程度值
alog -t LogType -V
更改指定日志类型的属性
alog -C -t LogType { [ -f ] [ -s Size ] [ -w Verbosity ] }
显示指定日志类型的当前属性
alog -L [ -t LogType ] 
显示 alog 命令的用法
alog -H

描述

alog 命令读取标准输入,并写至标准输出,然后将输出复制到固定大小的文件。 此文件当作是一个循环的日志。 如果此文件满了,新的条目覆盖最旧的现有条目。

alog 命令处理在命令行指定的日志文件或在 alog 配置数据库中定义的日志。 在 alog 配置数据库中定义的日志由 LogType 标识。 每个定义的 LogType文件大小详细信息 属性都存储在具有 LogType的 alog 配置数据库中。 您可以使用 odmadd 命令将新的 LogType 添加到 alog 配置数据库。 您可以使用 alog 命令来更改 alog 配置数据库中定义的 LogType 的属性。

标志

描述
-C 更改指定 LogType 的属性。 将 -C 标志与 -f-s-w 标志配合使用,以更改指定 LogTypeFileSizeVerbo志 属性。 -t LogType 标志是必需的。
注:-C 标志与 -sSize 配合使用只会更改 ODM 中的大小值,而不会更改实际日志文件的大小。

如果使用 -C 标志,alog 命令不会将标准输入复制到标准输出或某个日志文件中。

当使用 -C 标志来修改控制台日志类型的属性时,控制台日志文件也将得到修改,且控制台设备驱动程序将更新以使用新的值。 这是 alog -C 的常规操作的一种背离,用于适应控制台日志文件中的特殊格式。

注:您必须具有 root 用户权限才能更改 alog 属性。

-f LogFile 指定日志文件的名称。 如果指定的日志文件不存在,那么会创建日志文件。 如果 alog 命令无法写至日志文件,那么它会写至 /dev/null。 使用带有 -C-t 标志的 -f LogFile 标志来更改 alog 配置数据库中定义的 LogTypeFile 属性。
-h 显示 alog 命令的用法。
-L 列出当前在 alog 配置数据库中定义的日志类型。 如果将 -L 标志和 -t LogType 标志一起使用,那么会列出指定 LogType 的属性。 FileSizeVerbosity 的当前属性以用冒号隔开的值列出:
<File>:<Size>:<Verbosity>

如果使用 -L 标志,那么 alog 命令不会将标准输入复制到标准输出或文件

-O 列示日志文件的内容。 按顺序将日志文件的内容写至标准输出。
-q 将标准输入复制到日志文件,但不写至标准输出。
-s 大小 指定日志文件的大小限制(以字节计)。 创建日志文件时会为其保留此空间。 如果创建了新的日志文件并且未指定 Size 属性,那么会使用最小大小(4096 字节)。 如果日志文件已存在,那么会更改其大小。 您指定的大小会变大,成为下一个 4096 整数倍字节。 日志文件的最大大小为 2 GB。 如果指定的大小大于 2 GB,那么仅考虑使用 2 GB。 如果缩小日志文件的大小,那么会删除日志中不符合新大小限制的最旧条目。 必须对日志文件具有写许可权才能更改其大小。

-s Size 标志与 -C-t 标志配合使用,以更改 alog 配置数据库中定义的 LogTypeSize 属性。 仅更改了 ODM 中的大小值。 实际日志文件的大小保持不变。 新的 Size 属性值将在下一次创建日志文件时使用。

-t LogType 标识在 alog 配置数据库中定义的日志。 alog 命令从 alog 配置数据库中获取日志的文件名称和大小。 如果 LogFile 不存在,那么创建一个。

如果 alog 命令不能从 alog 配置数据库中获取指定 LogType 的信息或 alog 命令不能写至 LogFile,那么它写至 /dev/null

如果使用 -f 标志指定 LogTypeLogFile ,那么将使用 LogFile 并忽略 LogType

-V 将 alog 配置数据库中定义的 LogTypeVerbo志 属性的当前值写入标准输出。 如果不指定 LogType ,或您指定的 LogType 未定义,那么没有值写至标准输出。

alog 命令与 -t LogType-V 标志配合使用的值输出可由将其输出输送到 alog 命令以控制其写入管道的数据的详细程度的命令使用。

-w 详细程度 当与 -C-t 标志一起使用时,更改 alog 配置数据库中定义的 LogTypeVerbo志 属性。

The 详细程度 attribute can have a value from 0 to 9. 如果值为 0 ,那么 alog 命令不会将任何信息复制到 LogFile 。 所有的信息依旧写至标准输出。 如果值不为 0,那么所有传送到 alog 命令的标准输入复制到 LogFile 和标准输出。

示例

  1. 要在指定的日志文件中记录当前日期和时间sample.log,请输入:
    date | alog -f /tmp/sample.log
  2. 列出以下项的内容:/tmp/sample.log日志文件,请输入:
    alog -f /tmp/sample.log -o
  3. 要更改指定的日志文件的大小,请执行以下操作: /tmp/sample.log至 8192 字节,请输入:
    echo "resizing log file" | alog -f /tmp/sample.log -s 8192
  4. 要添加新的日志类型sample到 alog 配置数据库,创建alog.add以下格式的文件:
    SWservAt:
        attribute="alog_type"
        deflt="sample"
        value="sample"
     
    SWservAt:
        attribute="sample_logname"
        deflt="/tmp/sample.log"
        value="/tmp/sample.log"
     
    SWservAt:
        attribute="sample_logsize"
        deflt="4096"
        value="4096"
     
    SWservAt:
        attribute="sample_logverb"
        deflt="1"
        value="1"

    在创建alog.add文件,输入:

    odmadd alog.add

    这就增加了alog.add文件到SWservAt

  5. 要更改日志类型的日志文件的名称,请执行以下操作:sample/var/sample.log在 alog 配置数据库中,输入:
    alog -C -t sample -f /var/sample.log
  6. 要将引导日志的大小改为 8192 字节并在 ODM 中反映新大小,请输入:
    alog -C -t boot -s 8192
    echo "Changed log size" | alog -t boot -s 8192

文件

描述
/etc/objrepos/SWservAt 软件服务辅助属性对象类