fteCreateLogger(创建 "MFT文件或数据库日志记录器)

使用 fteCreateLogger 命令可创建 Managed File Transfer 文件或数据库记录器。

重要说明:
[UNIX、Linux、Windows]UNIX, Linux®, and Windows 系统上,如果您使用的是 IBM® MQ 服务器安装镜像,则必须同时满足以下两个条件才能运行该命令:
  • 成为 IBM MQ 管理员。
  • 是 mqm 组的成员(如果在系统上定义了 mqm 组)。
否则,您将收到错误信息BFGCL0502E: You are not authorized to perform the requested operation。如果您使用的是 Redistributable Managed File Transfer Agent 存档,则不受此限制。
[z/OS]z/OS® 系统上,您必须满足以下条件中的至少一个,才能运行该命令:
  • 是 mqm 组的成员(如果在系统上定义了 mqm 组)。
  • 成为 BFG_GROUP_NAME环境变量 (如果有)中指定的组成员。
  • 运行命令时 ,BFG_GROUP_NAME环境变量中没有设置任何值。
[IBM i]

IBM i 上的记录器

IBM i 平台上不支持 Managed File Transfer 记录器。

用途

fteCreateLogger 命令向您提供 MQSC 命令,您必须针对记录器命令队列管理器运行这些命令以创建以下记录器队列:
  • SYSTEM.FTE.LOG.CMD.logger_name
  • SYSTEM.FTE.LOG.RJCT.logger_name

这些队列是内部系统队列,除非您要删除该记录器,否则不得修改、删除或读取这些队列中的消息。 以下位置的文件中也提供了要运行的 MQSC 命令:MQ_DATA_PATH\mqft\config\coordination_qmgr\loggers\logger_name\logger_name_create.mqsc

如果您以后想删除记录器,请使用 fteDeleteLogger 命令。

Managed File Transfer 提供了可帮助您配置记录器的高级记录器属性。 请参阅 MFT 记录器配置属性

注: 如果要创建的记录器是数据库记录器,并且未连接到本地 Db2® 数据库,那么您将需要手动创建 MQMFTCredentials.xml 文件。 此文件包含用于连接到数据库的用户名和密码。 您应使用 logger.properties 文件中的属性文件 wmqfte.database.credentials 来指定 MQMFTCredentials.xml 文件的路径。 此凭证文件的样本位于 MQ_INSTALLATION_PATH/mqft/samples/credentials/ 中。

特殊字符

请谨慎使用包含特殊字符的参数值,从而避免命令 shell 以您不期望的方式解析字符。 例如,包含空格、引号(单或双)、正斜杠或反斜杠之类字符的标准文件路径和名称可能由命令 shell 进行解释,而不是直接传递到命令本身。 为避免命令 shell 解释字符,请将整个参数括在双引号/单引号中,或者使用命令 shell 的转义序列来转义特殊字符。

语法

fteCreateLogger

读取语法图跳过可视语法图 fteCreateLogger  -loggerType DATABASEDATABASE optionsFILEFILE options -loggerQMgr  qmgr_nameWindows 系统选项
DATABASE options
读取语法图跳过可视语法图  -dbType  database_type  -dbName  数据库 _ 名称  -dbDriver 驱动程序  -dbLib PATH
FILE options
读取语法图跳过可视语法图  -fileLoggerMode CIRCULARLINEAR  -fileSize 大小  -fileCount 数量  -loggerQMgrHost  字符串 -loggerQMgrPort 数量 -loggerQMgrChannel 字符串
Windows 系统选项
读取语法图跳过可视语法图 -s service_name -su user_name -sp密码-sj选项-sl选项
MQ 安全性的参数
读取语法图跳过可视语法图-credentialsFilefilePath-useridusername
读取语法图跳过可视语法图 -p 配置 _ 选项 -f logger_name

参数

--loggerType(类型)
必需。 指定受管文件传输信息将记录到的位置。 如果传输信息将记录到数据库,那么类型的选项是 DATABASE,如果该信息将记录到文件,那么为 FILE

-loggerQMgr (qmgr_name)
可选。 确定为了接收包含受管文件传输相关信息的消息而要连接到的队列管理器。 该队列管理器必须位于与该记录器相同的系统上。 如果未指定 -loggerQMgr 参数,那么为此记录器设置的配置选项所关联的协调队列管理器将用作缺省值。
IBM MQ 9.1开始,如果协调队列管理器使用客户机方式连接进行连接,那么记录器将使用客户机方式。
注意: loggerQmgrHostloggerQmgrPortloggerQmgrChannel 参数仅对文件记录器有效。
如果尝试在数据库记录器上使用其中的任何一个参数或更多参数,将收到以下消息:
BFGCL0456E: The parameter '-loggerQMgrHost' is not valid for the fteCreateLogger command.

--dbType(数据库类型)
-loggerTypeDATABASE 时为必需项。 指定用于存储受管文件传输信息的数据库管理系统的类型。 选项是 db2oracle
注: 您需要使用 SQL 文件创建表。 .sql 文件可从 MQ_INSTALLATION_PATH_/mqft/sql 中获取:
  • 对于 Db2 数据库: ftelog_tables_db2.sql
  • 对于 Oracle 数据库:ftelog_tables_oracle.sql

--dbName(数据库名称)
-loggerTypeDATABASE 时为必需项。 受管文件传输信息所存储到的数据库的名称。 必须使用 Managed File Transfer 日志表配置数据库。

--dbDriver(驱动程序)
-loggerTypeDATABASE 时为必需项。 数据库的 JDBC 驱动程序类的位置。 这通常是 JAR 文件的路径和文件名。

--dbLib(路径)
-loggerTypeDATABASE 时为可选。 选定数据库驱动程序所需的任何本机库的位置。

--fileLoggerMode(模式)
-loggerTypeFILE 时为必需项。 指定用于存储受管文件传输信息的文件系统的类型。 选项包括 LINEARCIRCULAR

选项 LINEAR 表示文件记录器将信息写入文件,直至该文件达到由 -filesize 定义的最大大小。 达到最大大小时,文件记录器将启动新文件。 先前已写入信息的文件将不会删除,从而允许将其保留为日志消息的历史记录。 在该方式下运行时不会删除文件,从而将忽略 -fileCount,这是因为可创建的文件数量没有上限。 因为在该方式下运行时没有上限,所以有必要跟踪日志文件所用的磁盘空间量以避免磁盘空间不足。

选项 CIRCULAR 表示文件记录器将信息写入文件,直至该文件达到由 -fileSize 定义的最大大小。 达到最大大小时,文件记录器将启动新文件。 在该方式下写入了信息的文件的最大数量由使用 -fileCount 定义的值控制。 当达到文件的此最大数量时,文件记录器将删除首个文件并将其重新创建以用作当前活动文件。 如果 -fileSize 中定义的值为固定大小的字节单位,那么以此方式使用的磁盘空间的上限将等于 fileSize 乘以 fileCount。 如果 -fileSize 中定义的值为时间单位,那么最大大小将取决于这些时间段内系统中的日志消息吞吐量。

有关更多信息,请参阅 MFT 记录器配置属性

-文件大小(大小)
-loggerTypeFILE 时为必需项。 允许一个日志文件增大到的最大大小。 该值是大于零的正整数,后跟以下某个单位:KB、MB、GB、m(分钟)、h(小时)、d(天)、w(周)。 例如:-fileSize 5MB(指定最大大小为 5MB),-fileSize 2d(指定最多两天的数据)。

--fileCount(数字)
-loggerTypeFILE-fileLoggerModeCIRCULAR 为必需项。 要创建的日志文件的最大数目。 数据量超过此数量的文件中可以存储的最大量时,将删除最旧的文件,以便日志文件数从不超过此参数中指定的值。

-loggerQMgrHost
运行记录器队列管理器的机器的主机名或 IP 地址。

缺省值是“无”。

如果未指定 -loggerQMgrHost 参数,那么将采用绑定方式创建记录器。

-loggerQMgrPort
记录器队列管理器正在侦听的端口号。

缺省值为 1414。

-loggerQMgrChannel
用于连接到记录器队列管理器的通道的名称。

缺省值为 SYSTEM.DEF.SVRCONN。

[Windows]-s (service_name )
可选(仅限 Windows 系统)。 指示记录器将作为 Windows 服务运行。 如果未指定 service_name,那么服务将命名为 mqmftLoggerLOGGERQMGR,其中 LOGGER 是记录器名称,而 QMGR 是记录器队列管理器名称。

服务的显示名称 (显示在 " Windows 服务 " 窗口的 名称 列中) 始终为 Managed File Transfer Logger LOGGER@QMGR

[Windows]-su (用户名
可选(仅限 Windows)。 如果该记录器将作为 Windows 服务运行,那么该参数指定作为该服务运行身份的帐户的名称。 要使用 Windows 域用户帐户运行记录器,请以 DomainName\UserName格式指定值。 要使用本地内置域中的帐户来运行该服务,请以 UserName 格式指定该值。

您使用 -su 参数指定的 Windows 用户帐户必须具有 Log on as a service 权限。 有关如何授予此权限的信息,请参阅 有关将 MFT 代理程序或记录器作为 Windows 服务运行的指南

在指定 -s 时为必需项。

[Windows]-sp (密码
可选(仅限 Windows)。 -su 参数设置的用户帐户的密码。

该参数仅在指定 -s 时才有效。 如果在指定 -s 参数时不指定该参数,将生成警告消息。 该消息提醒您必须使用 Windows“服务”工具来设置密码,然后该服务才会成功启动。

[Windows]-sj (选项
可选(仅限 Windows)。 记录器作为 Windows 服务启动时,以 -D 或 -X 格式定义要传递到 JVM 的选项的列表。 这些选项使用井号 (#) 或分号 (;) 字符进行分隔。 如果您必须嵌入任何 (#) 或分号 (;) 字符,请将其置于单引号内。

该参数仅在指定 -s 时才有效。

[Windows]-sl (选项
可选(仅限 Windows)。 设置 Windows 服务日志级别。 有效选项是:errorinfowarndebug。 缺省值为 info。 如果 Windows 服务出现问题,那么该选项可能很有用。 如果将其设置为 debug,那么会在服务日志文件中提供更详细的信息。

该参数仅在指定 -s 时才有效。

--p(配置选项)
可选。 指定用于创建记录器的配置选项集。 按照约定,此值是协调队列管理器的名称。 如果未指定该参数,那么会使用缺省的配置选项集。

-f
可选。 强制该命令覆盖现有配置。

(logger_name)
必需。 要创建的记录器的名称。 这将合并到 Managed File Transfer 队列名称中,因此必须仅包含字母,数字以及句点 (.) 和下划线字符 (_)。 它也限制为最大长度为 28 个字符。

-credentialsFile (filePath)
可选。 现有凭证文件或新凭证文件的完整文件路径,将向其添加 IBM MQ 认证详细信息。

此命令支持将一组 IBM MQ 认证详细信息添加到指定的 Managed File Transfer 凭证文件中。 当已启用 IBM MQ 连接认证时,请使用此命令。 如果要更新现有的详细信息,则必须使用 -f 强制参数。

-userid (username)
可选。 用于关联凭证详细信息的用户标识。 如果未指定用户标识,将向所有用户应用凭证详细信息。 此外,还必须指定 -credentialsFile 参数。
-或-h
可选。 显示命令语法。

示例

在本例中,将创建名为 filelogger1 的循环文件记录器。 该文件记录器将创建最多 10 个文件,每个文件的大小为 10MB,总计使用最多 100MB 的磁盘空间:

fteCreateLogger -loggerType FILE -fileLoggerMode CIRCULAR -fileSize 10MB -fileCount 10 filelogger1
在此示例中,将创建称为 dblogger1 的数据库记录器。 该数据库记录器连接到称为 FTEDB 的 Db2 数据库:
fteCreateLogger -loggerType DATABASE -dbName FTEDB -dbType DB2 
    -dbDriver "C:\Program Files (x86)\IBM\SQLLIB\java\db2jcc4.jar" dblogger1
在此示例中,将创建称为 dblogger1 的数据库记录器。 该数据库记录器连接到称为 FTEDB 的 Oracle 数据库:
fteCreateLogger -loggerType DATABASE -dbName FTEDB -dbType oracle 
    -dbDriver "C:\app\oracle\product\12.1.0\dbhome_2\jdbc\lib\ojdbc7.jar" dblogger1
在此示例中,将使用主机名及缺省端口和通道来创建客户机方式文件记录器:
fteCreateLogger -loggerType FILE -loggerQMgr CORDQM -loggerQMgrHost cordqm.ibm.com 
-fileLoggerMode CIRCULAR -fileSize 10MB -fileCount 10 FL1 
在此示例中,将使用主机名、端口和通道来创建客户机方式文件记录器:
fteCreateLogger -loggerType FILE -loggerQMgr CORDQM -loggerQMgrHost cordqm.ibm.com 
-loggerQMgrPort 4444 -loggerQMgrChannel LOGGER_CHANNEL -fileLoggerMode CIRCULAR -fileSize 10MB 
-fileCount 10 FL1  

返回码

0
命令成功完成。
1
命令结束但未成功。