VistaNet Blog

OpsRampの命名ルール:記号に潜むトラブルを回避する方法

作成者: 三浦 剛志|Nov 5, 2026, 8:31:04 AM

OpsRampの名前に「+」は使わない ― 半角記号が招くトラブルと命名ルール


はじめに:画面では通るのに、後でつまずく名前

OpsRampで名前を付けるときは、英数字・ハイフン・アンダースコアだけを使う。これが本記事の結論です。

OpsRampの運用現場では、次のような名前をしばしば見かけます。製品名やサービス名に「+」が含まれていて、それをそのまま名前に入れたケースです。

Integration name: Tenant-A_API_Key_for_Log+Metrics

OpsRampの画面上は問題なく登録・表示されるため、気づかないまま使われ続けがちです。しかし「+」は、名前がAPIや外部ツールで使われた瞬間に、別の意味に化けることがある記号です。画面で通ることと、運用全体で安全なことは別の話です。

なぜ問題になるのか

OpsRampに付けた名前は、画面の中だけでは使われません。APIの検索条件、自動化スクリプト、チケット連携先、CSVなどにも渡され、それぞれの仕組みが独自のルールで解釈します。

「+」の代表的な落とし穴はURLです。URLのクエリ文字列では、「+」はスペースを表す決まりになっています。そのため、名前をそのまま渡すと次のように化けます。

意図した名前

受け取り側の解釈

結果

Log+Metrics

Log Metrics(スペース)

検索にヒットしない

Log%2BMetrics(エンコード済み)

Log+Metrics

正しく動く

エンコードすれば回避できますが、すべてのスクリプトとツールでそれを徒底するのは現実的ではありません。しかもエラーにはならず「0件」と返るだけなので、原因に気づくまでに時間がかかります。

OpsRampで名前が使われる場所

問題が表面化しやすいのは、画面の外で名前を扱う次の4つの場面です。

場面

起き得るトラブル

REST APIの検索(queryString=name:... など)

+ がスペースになり、対象が見つからない。& # ? を含むと、条件そのものが途中で切れる

自動化ツール(Terraform、Ansible、シェルやPowerShellのスクリプト)

エスケープ漏れで、名前が正規表現やコマンドの引数として誤解釈される

チケット・通知の連携(ServiceNow、メール、Teamsなど)

名前をキーにした突き合わせで、エンコードの違いによる不一致が起きる

CSVのエクスポート・インポート

, や " が列の区切りとして扱われ、列がずれる

Client名、Integration名、リソース名、タグ、デバイスグループ名、モニターテンプレート名など、人が付ける名前はすべて対象です。

避けたい半角記号とその理由

どの記号も、URL・OS・ディレクトリサービスなど、どこかの仕組みで「特別な意味」を持っています。

記号

特別な意味を持つ場所

起きること

+

URLクエリ、正規表現、LDAP/ADのDN、cmd.exeのcopy

スペース化け、繰り返し指定、エスケープが必要。IISは既定でURLパス中の + を拒否。ADのログオン名では使用禁止

& ? # =

URL

パラメータの区切りやページ内リンクとして解釈され、値が途中で切れる

%

URL、Windowsの環境変数

エンコード文字の開始や変数展開として扱われる

/ \

パス、URL

階層の区切りとして扱われる。Windowsではファイル名に使えない

* ? [ ]

シェル、正規表現

ワイルドカードとして展開される

$ ` | ; < >

シェル、PowerShell

変数展開、コマンドの実行や連結、リダイレクトとして扱われる

, " '

CSV、JSON、SQL、シェル

列の区切りや文字列の終わりとして扱われる

スペース

コマンドの引数、URL

引数が分かれる。+ や %20 との変換が混在する

:

Windowsのパス、検索式(name:value)

ドライブ指定や、検索式の区切りとして扱われる

ホスト名は、規格(RFC 1123)で「英数字とハイフンのみ」と決まっています。リソース名にホスト名を使う場合は、この規則がそのまま当てはまります。

推奨する命名ルール

使う文字を A-Z a-z 0-9 - _ の5種類に絞れば、ほぼすべての仕組みで安全に通ります。

  1. 使う文字は英数字・ハイフン・アンダースコアのみ。ドットはドメイン名や拡張子と紛らわしいので、ホスト名(FQDN)以外では使わない。
  2. 全角文字とスペースは使わない。日本語の説明は、名前ではなく説明欄(Description)に書く。
  3. 区切りの役割を決める。例:項目の区切りは _、項目内の単語の区切りは -。
  4. 先頭を記号にしない。- で始まる名前は、コマンドのオプションとして誤解釈される。
  5. 製品名の記号は、名前では外す。「Log+Metrics」のような表記は LogMetrics や Log-Metrics とし、正式表記は説明欄に残す。

対象

避けたい例

推奨例

Integration

Tenant-A_API_Key_for_Log+Metrics

Tenant-A_API-Key_Log-Metrics

Client

株式会社○○ (本番)

C001_Example-Corp_prod

デバイスグループ

Web/APサーバ #1

web-ap_tokyo_01

タグ(キー:値)

env: Prod & DR

env: prod-dr

既存の名前を変えるときの注意点

名前を変える前に、その名前を参照している場所を洗い出してください。変更そのものより、参照先の更新漏れが障害の原因になります。

  • 名前で検索しているAPIスクリプトや自動化ジョブはないか
  • アラートのポリシー、エスカレーション、チケット連携で名前を条件にしていないか
  • レポートやダッシュボードのフィルタに使っていないか
  • お客様や外部システムの台帳と、名前で突き合わせていないか

Integrationのように作り直しが必要なものは、新しい名前で作成して動作を確認してから古い方を削除すると、切り替えの間に監視が途切れません。

まとめ

名前は「人が読むラベル」であると同時に、「機械が扱う識別子」でもあります。画面で登録できたかどうかではなく、APIや連携先でもそのまま通るかどうかで判断してください。

OpsRampを導入する最初の段階で命名ルールを決めておくことが、後の自動化や他システムとの連携を楽にします。命名ルールの策定や既存環境の見直しは、VistaNetまでお気軽にご相談ください。