APIサーバー設定ファイル(api-config.yml)

APIサーバー設定ファイル(api-config.yml)では、HULFT10 Smart Proxy(Web API)を使用するために、サーバー関連の情報、ログおよびデータベース関連の項目を設定します。設定ファイルの更新はテキストエディタで行ってください。

 

APIサーバー設定ファイル(api-config.yml)は以下にあります。

$HULFT_SMART_PROXY_HOME/etc/api-config.yml

項目一覧

APIサーバー設定ファイル(api-config.yml)の設定項目は以下のとおりです。

表5.1 APIサーバー設定ファイル(api-config.yml)

項目名

タグ名

初期値

設定値

要否

サーバー関連定義

server

 

 

 

ポート番号

port

 

1~41000

必須

サーバー証明書

tls-cert-path

 

ファイルパスとして有効な文字列

必須

秘密鍵

tls-key-path

 

ファイルパスとして有効な文字列

必須

HTTPリクエスト読み込み時間

read-timeout-sec

30

0~600

 

HTTPリクエストヘッダー読み込み時間

read-header-timeout-sec

30

0~600

 

HTTPレスポンス書き込み時間

write-timeout-sec

30

0~600

 

待機時間

idle-timeout-sec

30

0~600

 

データベース関連定義

database

 

 

 

データベースドライバー

db-driver

postgres

postgres

必須

データベース名

dbname

hulsp

文字

必須

ユーザー名

user

 

文字

必須

パスワード

password

 

文字

必須

ホスト名

host

 

文字

必須

ポート番号

port

5432

1~65535

必須

SSLモード

ssl-mode

disable

disable、require、verify-ca、verify-full(*1)

必須

接続時間

connect-timeout

30

0~600

 

クライアントSSL証明書

ssl-cert

 

ファイルパスとして有効な文字列

 

クライアントSSL秘密鍵

ssl-key

 

ファイルパスとして有効な文字列

 

SSLルート証明書

ssl-root-cert

 

ファイルパスとして有効な文字列

 

ログ定義

log

 

 

 

ログレベル

level

info

debug、info、warn、error

必須

ファイルパス

filepath

 

ファイルパスとして有効な文字列

必須

ファイルサイズ

max-size

100

1以上の正数値

必須

バックアップファイル数

max-backups

0

0以上の正数値

必須

HULFT定義

hulft

 

 

 

接続時間

connect-timeout-sec

10

0~600

必須

ソケット読み込み時間

read-timeout-sec

30

0~600

必須

ソケット書き込み時間

write-timeout-sec

30

0~600

必須

*1

:

未設定の場合は、“disable”が指定されます。

各項目の説明

APIサーバー設定ファイルの各項目について説明します。

サーバー関連定義(server)

ポート番号(port)

APIサーバーが起動する際に使用するポート番号

サーバー証明書(tls-cert-path)

TLS通信を行うためのサーバー証明書のファイルパス

秘密鍵(tls-key-path)

サーバー証明書に対応する秘密鍵のファイルパス

HTTPリクエスト読み込み時間(read-timeout-sec)

HTTPリクエスト全体(ボディーを含む)の読み取りがタイムアウトするまでの最大時間(単位:秒)

“0”を指定、または未設定の場合は、タイムアウトは発生しません。

HTTPリクエストヘッダー読み込み時間(ReadHeaderTimeout_sec)とともに指定できます。

HTTPリクエストヘッダー読み込み時間(read-header-timeout-sec)

HTTPリクエストヘッダーを読み取るために許可される最大時間(単位:秒)

“0”を指定、または未設定の場合は、HTTPリクエスト読み込み時間(read-timeout-sec)の値が使用されます。

HTTPレスポンス書き込み時間(write-timeout-sec)

HTTPレスポンスの書き込みがタイムアウトするまでの最大時間(単位:秒)

“0”を指定すると、タイムアウトは発生しません。

待機時間(idle-timeout-sec)

次のリクエストを待つ最大時間(単位:秒)

“0”を指定するとHTTPリクエスト読み込み時間(read-timeout-sec)の値が使用されます。

待機時間(idle-timeout-sec)HTTPリクエスト読み込み時間(read-timeout-sec)の両方に“0”を指定すると、タイムアウトは発生しません。

データベース関連定義(database)

データベースドライバー(driver)

データベースへの接続に使用するドライバー名

“postgres”のみ指定できます。

データベース名(dbname)

アプリケーションで使用するデータベース名

ユーザー名(user)

データベースへの接続に使用するユーザー名

パスワード(password)

データベースへの接続に使用するパスワード

ホスト名(host)

接続するデータベースのホスト名

ポート番号(port)

接続するデータベースのポート番号

SSLモード(ssl-mode)

接続にSSLを使用するかどうか、またどのように使用するかの制御を指定

接続時間(connect-timeout)

データベースとの接続の確立がタイムアウトするまでの最大時間(単位:秒)

“0”を指定すると、タイムアウトは発生しません。

クライアントSSL証明書(ssl-cert)

クライアント認証を行う場合のクライアントSSL証明書のファイルパス

クライアント認証をする場合は、この項目の指定は必須です。

クライアントSSL秘密鍵(ssl-key)

クライアントSSL証明書に対応する秘密鍵のファイルパス

クライアント認証をする場合は、この項目の指定は必須です。

SSLルート証明書(ssl-root-cert)

サーバー証明書の認証に使用するCA証明書のファイルパス

ログ定義

ログレベル(level)

アプリケーションログの出力レベル

debug

: アプリケーションの動作に関するデバッグ情報が表示

info

: 正常に動作していることを把握するための情報が表示

warn

: システムの動作に影響する可能性がある問題を特定するための情報が表示

error

: エラーの内容や対処方法など、システムの復旧を目的とした情報が表示

 

出力されるログの優先度は以下のとおりです。

←優先度低      優先度高→

debug < info < warn < error

 

優先度が指定したログレベル以上のログが出力されます。

例)ログレベル(level)に“info”を指定した場合、“debug”のログは出力されません。“info”、“warm”および“error”のログが出力されます。

ファイルパス(filepath)

アプリケーションログの出力先となるファイルパス

フルパスでの入力をお勧めします。

ファイルサイズ(max-size)

アプリケーションログがローテーションされるファイルサイズ(単位:MB)

バックアップファイル数(max-backups)

アプリケーションログがローテーションされ保持する古いログファイルの最大数

HULFT定義

接続時間(connect-timeout-sec)

HULFTとの接続の確立がタイムアウトするまでの最大時間(単位:秒)

“0”を指定すると、タイムアウトは発生しません。

ソケット読み込み時間(read-timeout-sec)

ソケットからの読み込みがタイムアウトするまでの最大時間(単位:秒)

“0”を指定すると、タイムアウトは発生しません。

ソケット書き込み時間(write-timeout-sec)

ソケットからの書き込みがタイムアウトするまでの最大時間(単位:秒)

“0”を指定すると、タイムアウトは発生しません。