> 活用事例 > 簡単にPOLESTARのジョブを作成するには、ChatGPTが役立ちました!自然言語でスクリプトを開発

簡単にPOLESTARのジョブを作成するには、
ChatGPTが役立ちました!

自然言語でスクリプトを開発


ビジネスシーンでのChatGPTの活用は枚挙にいとまがありません。メールや業務マニュアルの作成、リサーチ業務など様々なシーンで活用されています。開発の現場ではコードのバグチェックや設計に関わるドキュメントの作成、運用管理ではログをChatGPTで解析をするなど、多方面で活躍しています。

弊社では、自然言語でPOLESTAR Automationの自動化ジョブ作成にチャレンジしました。
POLESTAR Automationは、PowerShellやShell、Pythonなどメジャーな9つの言語に対応しており、活用できる知見も多いため、ChatGPTとの相性がとても良いように思います。

1.ChatGPTに依頼する前提

単純に「✕✕✕」を作ってと依頼しても、期待したスクリプトは返ってきません。
どんなスクリプト言語でどんな回答がほしいのかを記述することが必要です。そして、エージェントレスの場合にはアクセス方法の明記も必要です。

まず、エージェント利用、エージェントレスで利用できるスクリプト言語の種類を理解します。

表1 Windows OSに実行する場合のスクリプト言語

Windows 設定できるスクリプト言語
エージェント利用 PowerShell, Python, VBScript, Windows batch
エージェントレス VBScript ※WMI経由と記載

表2 Linux OSに実行する場合のスクリプト言語

Linux 設定できるスクリプト言語
エージェント利用 Shell, Python, Perl
エージェントレス Shell, Python, Perl


Windows OSにエージェントレスでスクリプトを実行する場合は、WMI*を利用と記載します。

*WMI:Windows Management Instrumentation


例えば、エージェントレスでWindowsアップデートの適用状況を確認するには、『Windowsアップデートの適用状況をWMI経由で収集するためのVBScriptは?』と入力します。

また、LinuxでHDDの使用率を確認するには、『HDDの使用率を確認するためのShellスクリプトは?』と入力します。Linuxの場合、結果を日本語で表示させたい場合は、「日本語エンコードで」と追記すると良いでしょう。

2.ChatGPTでスクリプトを作成する

Windowsアップデートの適用状況

まず、『Windowsアップデートの適用状況をWMI経由で収集するためのVBScriptは?』を入力した場合の結果です。

ChatGPT
Windowsアップデートの適用状況をWMI (Windows Management Instrumentation) 経由で収集するためのVBScriptを以下に示します。

Set objWMIService =
GetObject(“winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2”)
Set colItems = objWMIService.ExecQuery(“SELECT * FROM Win32_QuickFixEngineering”)

For Each objItem in colItems
    WScript.Echo “適用日: ” & objItem.InstallDate & vbTab & “KB番号: ” & objItem.HotFixID & vbTab & “説明: ” & objItem.Description
Next

このVBScriptは、Win32_QuickFixEngineering クラスをクエリして、Windowsのクイックフィックスエンジニアリング情報(つまり、アップデート情報)を取得します。GetObject 関数を使用して WMI サービスに接続し、ExecQuery メソッドを使用してクエリを実行します。

取得された各アップデートの情報はループ処理され、適用日 (InstallDate)、KB番号 (HotFixID)、説明 (Description) が表示されます。

このスクリプトを実行すると、Windows Updateの適用状況が表示されます。ただし、スクリプトを実行するには管理者権限が必要です。また、スクリプトの実行にはVBScriptエンジンが必要な場合があります。


LinuxサーバーにHDD使用率を確認

次に、『LinuxサーバーにHDDの使用率を日本語エンコードで確認するためのShellスクリプトは?』を入力した場合の結果です。

ChatGPT
以下は、日本語エンコードでHDDの使用率を確認するためのシェルスクリプトの例です。

bash
Copy code
#!/bin/bash

# ディスク使用率を取得する関数
get_disk_usage() {
  df -h | awk ‘$NF==”/”{printf “%s\n”, $4}’
}

# メインスクリプト
disk_usage=$(get_disk_usage)

echo “HDDの使用率: $disk_usage”

このスクリプトは、dfコマンドを使用してディスク使用率を取得し、awkコマンドを使用して該当の行から空き容量のみを抽出しています。最後に結果を出力しています。

スクリプト内では特にエンコーディングの設定を行っていないため、システムのデフォルトエンコーディングが使用されます。日本語エンコードを使用したい場合は、シェルの環境変数 LANG を設定しておく必要があります。例えば、以下のように設定することができます。

export LANG=ja_JP.UTF-8

この設定は、スクリプトを実行する前に行うか、スクリプト内で設定することができます。日本語の表示が正しく行われるはずです。

※POLESTARの管理サーバーがWindowsの場合文字化けが起こるので、表示は日本語ではなく英語にすることをおすすめします。


このように、自然言語でChatGPTに依頼すると、希望した言語のスクリプトだけでなく、その利用方法のインストラクションまでわかりやすく、丁寧に回答してくれます。

3.POLESTAR Automationへのスクリプト適用方法

では、作成したスクリプトをどのようにPOLESTAR Automationで実行するのでしょうか?

1つは、「入力コマンド実行」という機能利用して、対象のサーバーにリアルタイムでスクリプトを実行する方法です。
もう1つは、「スクリプトジョブ・ウィザード」を利用して、自動化ジョブを作成する方法です。

いずれも、ChatGPTで出力されたスクリプトをコピー&ペーストするだけです。スクリプトを実行する対象デバイスやスケジュールなどはマウスで設定ができ、とても簡単にジョブの実行が行なえます。

入力コマンド実行画面
図1 入力コマンド実行画面
スクリプトジョブ・ウィザード画面
図2 スクリプトジョブ・ウィザード画面

POLESTAR Automationは構成情報の収集と、ジョブ作成ができるオールインワンの運用自動化ツールです。基本的に、GUIでほとんどの操作が行えるため、属人化すること無く多くの方がご利用いただけます。

スクリプトの作成はハードルが高く、ジョブ開発に二の足を踏むお客様用に、弊社が1,000本以上のサンプルジョブを作成し、無償でご提供しています。

さらにこれからは、ChatGPTを活用することでお客様自身でもスクリプトの開発が簡単に行えるようになるため、活用の幅が広がるのではないでしょうか。


カテゴリー別活用事例一覧へ