こちらの内容は、今後のリリースにより変わる(不要になる)可能性があります。

バージョン2023.2以降で、IRISスタジオが非推奨となったこともあり、VSCode拡張機能を評価される方も今後増えるかと思います。

既存のCache'資産をお持ちで、ソース管理をソースコントロールフックで実施されている方などにおかれましては、その際にサーバサイド編集を選択される方もおられるかと思います。

VSCode拡張には、Cache'/IRISスタジオの「ファイルから検索」と同じ要領でサーチを行いたいというご要望に応えるための機能が備わっています。その導入方法が、VSCodeの未公開APIを使用している関係で、ひと手間かかるものとなっているため、解説します。

2 1
0 113

Red Hat Insights アラートが InterSystems IRIS に対応しました

InterSystems と Red Hat は共同で、IRIS 固有の Red Hat Insights アラートを開発しました。

Red Hat Insights は、Red Hat Enterprise Linux 環境におけるシステムリスクの予測と改善策を提案するサービスです。Insights は、ほぼすべてのバージョンの RHEL, OpenShift, Ansible サブスクリプションにて無料でご利用いただけます。詳細については、Red Hat の Insights ページをご参照ください。

0 0
0 53
記事
· 2023年9月28日 22m read
OpenAPI Suite - パート 1

コミュニティの皆さん、こんにちは。

私が作成した OpenAPI-Suite という最新のパッケージをご紹介します。これは、OpenAPI 仕様バージョン 3.0 から ObjectScript コードを生成するツールセットです。 簡単に言うと、これらのパッケージでは以下を行うことができます。

  • サーバーサイドクラスの生成。 ^%REST による生成コードに非常に似ていますが、バージョン 3.0 がサポートされていることに付加価値があります。
  • HTTP クライアントクラスの生成。
  • クライアントプロダクション(ビジネスサービス、ビジネスオペレーション、ビジネスプロセス、Ens.Request、Ens.Response)クラスの生成。
  • コードの生成とダウンロードまたはサーバーでの直接コンパイルを行う Web インターフェース。
  • バージョン 1.x からバージョン 3.0 への仕様の変換。
  • 0 0
    0 50

    この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Open Exchangeに公開されている sqlalchemy-iris を利用してPythonとSQLでIRISのデータを操作する方法を投稿された Heloisa Paivaさんの記事をご紹介します。

    Open Exchangeは、世界各地にいる開発者コミュニティメンバーが開発したインターシステムズ製品で利用できるサンプルアプリが登録されているページで、自由にダウンロードしてご利用いただけます。

    Heloisaさんの記事のように公開されている Open Exchange の利用例があると、「ちょっと使ってみたいな・・」と思われているメンバーの方への情報共有ができてとても有用な記事になると思います!丁度日本で初開催の「技術文書ライティングコンテスト」開催中ですので、ぜひ使用例や感想など、投稿してみてください!💪

    0 0
    0 189

    ご好評をいただいておりますインターシステムズ主催 開発者向けウェビナーを次回は以下の通り開催いたします。

    日時:2023年10月18日(水)13時~13時30分

    タイトル:「クラウド上のIRIS - サイジングのベストプラクティスをご紹介」(事前登録制・参加費無料)

    ご登録はこちらから

    【概要】

    0 0
    0 69

    開発者の皆さん、こんにちは!

    日本の開発者コミュニティではとなる、ミートアップ(オフラインイベント)を大阪で開催します!

    日 時:2023年11月17日(金)15時~19時

    場 所:FRENCH BAGUETTE CAFE (イタリアンレストラン)
       《地下鉄御堂筋線 淀屋橋駅 11番出口から徒歩3分》
       ※淀屋橋駅 (大阪駅から地下鉄御堂筋線で3分)から徒歩3分

    参加費:無料

    定 員:50名
    ※定員に達した際は調整をお願いすることもございます。予めご了承下さい。

    (11/16更新) お申込を締め切らせていただきました。

    1 1
    0 161

    InterSystems は、IRIS 2023.3 から InterSystems IRIS NLP (自然言語処理, 旧 iKnow) の開発を中止し、非推奨とすることを決定しました。 InterSystems は本技術を利用しているお客様のサポートを続けますが、本技術を開発するきっかけとなったコアテキスト検索のユースケース以外、新規プロジェクトでの利用を推奨しません。 自然言語を含むその他のユースケースでは、InterSystems も特定のアプリケーションに関連して研究している、大規模言語モデルにもとづく新しい技術を利用することで、より良い対応が可能となっています。

    InterSystems IRIS NLP のご利用に関するご質問は、弊社担当アカウントチームにお問合せいただくか、 @Benjamin De Boe までご連絡ください。

    0 0
    0 78

    IRISアップグレードやインストールがうまくいかない場合、初めに以下の3点をご確認ください。

    1. インストーラーに問題はないか?
    2. 対象バージョンの最新インストーラー(キット)を使用しているか?
    3. サポート対象プラットフォームへのインストールを行っているか?

    1について:
    インストーラーのダウンロードに問題があったなどで、インストーラー自体に問題があり、インストールできないというケースがあります。
    その場合は、インストーラーのハッシュ値(md5 checksum)を比較してファイルの同一性を確認するか、再ダウンロードしてインストールをお試しください。

    2 0
    0 76

    開発者の皆さん、こんにちは!

    このお知らせ📣では、第1回 InterSystems Japan 技術文書ライティングコンテスト の応募記事の探し方をご紹介します。

    コンテストにご応募いただいた記事は、こちらのページ👉https://jp.community.intersystems.com/contests/1 からご覧いただけます。

    または、コミュニティのページ上部にあるメニューからも同じページに移動できます。

    2 0
    0 60

    InterSystems IRIS® と InterSystems IRIS for HealthTM 2023.3 の開発者プレビュープログラムの一環として、最初の開発者プレビューを公開いたします

    今後のプレビューリリースは、2週間ごとの発表を予定しており、新機能が完成次第、プレビュー版に追加されていきます。

    みなさまとよりよい製品にできるよう、ぜひ開発者コミュニティみなさまのフィードバックをお寄せください。ドキュメントは以下のリンクからご覧いただけます。本バージョンが正式公開 (General Availability - GA) されるまで、数週間かけてドキュメントは更新される予定です。

    1 0
    0 54

    開発者の皆さん、こんにちは!

    ObjectScriptのコード実行中にエラーが発生した場合 "<UNDEFINED>HelloWorld+2^Simple.Demo.1 *name" のようなエラーメッセージが表示されます。

    エラーメッセージの読み方については、ObjectScriptクックブックの「ObjectScriptでエラーが発生したら」のエラーメッセージの読み方 をご参照ください。

    エラー行の特定を行う際、VSCodeのコマンドパレットを利用すると簡単に対象行にジャンプできますので、以下、方法をご紹介します。

    1)VSCodeのView→Command Palette... を開きます。

    2) 「ObjectScript:Open Error Location...」を選択します(初回は表示項目に登場しないため > の後ろに ObjectScript と入力すると表示されます)。

    3) テキストボックスが表示されるので、エラーメッセージの出力情報の中から ラベル名+行数^生成ルーチン名 をコピーして貼り付け、Enterをクリックします。

    ※スタジオにも同様の機能がありますが、VSCodeの場合対象となるコード(生成コードの元コード)をVSCode上で表示していなくても対象となる生成ルーチンを開きエラー行をポイントしてくれます。

    3 0
    0 214

    インターシステムズは、接続性に関する 2 つの問題を修正しました。これらの不具合とその修正はそれぞれ独立しています。

    この警告は、2つの問題の修正を含む ポイントリリース があるため、両方に対処する内容になります。

    どちらの問題も、以下の製品のバージョン2019.1.42020.1.4のみに影響します:

    1 0
    0 46

    インターシステムズは、いくつかの問題を修正するためにリリースを再作成する必要がある場合があります。このプロセスにより、「ポイントリリース」と呼ばれる新しいキットが生成されます。

    ポイントリリースは、メンテナンスリリースやメジャーリリースとは異なります。 これは緊急の問題に対して、迅速かつ的確に対応するために行われます。


    ポイントリリースの確認方法

    InterSystems Data Platform 製品は以下のリリース規則に従います:

    <インターシステムズ製品> <年>.<メジャー>.<メンテナンス>.<ビルド#>.<ポイント>

    例:InterSystems IRIS 2022.1.4.204.1

    ポイントリリースの確認方法は簡単で、製品キットの下1桁が0でなければ、ポイントリリースを使用していることになります。

    2 0
    0 62

    開発者の皆さん、こんにちは!

    スタジオを利用されている方にはお馴染みのソースコードの「XMLファイルへのエクスポート/インポート機能」がVSCodeのObjectScriptエクステンションに追加されました! (ObjectScript 2.10.0以降に含まれています。こちらのリクエストが元となりました👉https://github.com/intersystems-community/vscode-objectscript/issues/1158 エクステンションの追加番号は#1171です)

    今まで、過去エクスポートしたXMLファイルをVSCodeから参照するためには、管理ポータル(またはスタジオ)を利用してインポートする必要がありましたが、VSCodeの画面だけでできるようになりました!

    💡注意1: InterSystems IRIS /InterSystems IRIS for Health 2023.2以降のバージョンに接続した状態でご利用いただける機能です。

    💡注意2:この機能は管理ポータルやスタジオのインポート/エクスポートのVSCode版のような機能となるため、インポートしたソースコードはサーバ側にインポートされ、エクスポートはサーバ側コードを選択してXMLファイルにエクスポートする動作となります。XMLファイルインポート後、VSCodeのワークスペースでローカルファイル(*.cls や *.mac)として編集 したい場合は、 ObjectScriptエクステンションマークをクリックし、対象のコードを選択→エクスポート の手順でローカルにエクスポートする必要があります。

    2 0
    0 189

    この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Heloisa Paivaさんが投稿されたシンプルですぐに試せる記事をご紹介します。


    はじめに

    このチュートリアルは、テストやチュートリアル用のサンプル作成など、あらゆる目的でサンプルデータベースを作成するための、私が見つけた最も簡単な方法についての簡単なチュートリアルです。

    ネームスペースの作成

    1. ターミナルを開きます。
    2. 次のコマンドを実行します。 "Do $SYSTEM.SQL.Shell()" (※または :sql の入力でもSQLシェルに切り替えできます)
    3. "CREATE DATABASE " コマンドを実行します。実行時、作成したいネームスペース名をコマンドの引数に指定します。(TESTネームスペースを作成する例:CREATE DATABASE TEST)

    これで、管理ポータルから新しいネームスペースを作成するより簡単で素早い方法でネームスペースを作成できます。

    1 0
    0 82

    こんにちは、皆さま。
    業務でIRISを用いて開発を行っている者です。

    技術文書ライティングコンテストという事で、私からはAWS環境を用いたCI/CDの仕組みについてご紹介します。

    CI/CDとは「Continuous Integration(継続的インテグレーション)/ Continuous Delivery(継続的デリバリー)」の略称で、
    詳細はネットをググると色々出てくると思いますが、私としてはリポジトリに格納されたものを自動で品質保証して、
    問題なければ自動でデプロイしてくれる一連の仕組み
    だと理解しています。

    という事で、その第一歩はIRISのソースコードをgitで管理することです。
    pythonで作成したテストプログラムを用意しました。

    12 0
    0 226

    Windows環境にWebGatewayのみをインストールした場合に、「Service Unavailable / HTTP Error 503. The service is unavailable.」エラーとなりWebアプリケーションに接続できない場合があります。

    こちらは、Visual C++ 再頒布可能パッケージ がインストールされていない環境に、Webゲートウェイをインストールした場合に見られる事象です。

    Microsoft社のホームページより、Visual C++ 再頒布可能パッケージ(X64)をダウンロードしてインストールしてください。

    インストール後IISを再起動し、以下のリンクよりWebゲートウェイ管理ページに接続できることをご確認ください。

    1 0
    0 71

    Caché と InterSystems IRIS データベースの整合性は、システム障害から完全に保護されてはいますが、物理ストレージデバイスが保管しているデータは、デバイスの障害によって破損してしまいます。 そのため、多くのサイトでは、データベースの整合性チェックを定期的に実行するように選択しており、特に特定のバックアップが災害時に信頼できるかどうかを検証するためにバックアップが行われています。 システム管理者がストレージの破損を伴う災害に対応するために、整合性チェックも緊急に必要となる場合もあります。 整合性チェックはチェックされているグローバルの各ブロック(すでにバッファーにない場合)を、グローバル構造で指示された順序で読み取る必要があります。 これには膨大な時間がかかりますが、整合性チェックは、ストレージサブシステムが維持できる限り高速に読み取ることができます

    1 0
    0 96

    開発者の皆さん、こんにちは!

    いよいよ9月6日(水)~「第1回 InterSystems Japan 技術文書ライティングコンテスト」が始まります!

    このお知らせでは、技術文書ライティングコンテスト📝への記事の投稿方法をご紹介します。

    手順は以下2つだけ。とても簡単です。ぜひチャレンジしてみてください!💪

    1. 開発者コミュニティにアカウントを作成する
    2. IRISに関連した記事を書いてコンテスト用タグを設定する

    1については、記事「アカウント作成方法」に図解がありますのでご参照ください。

    2については、以下の「記事の投稿方法」で詳しくご紹介します。

    1 3
    0 103

    こちらの記事では、RESTやCSPなどの「Webアプリケーションのトラブルシューティング」のヒントをご紹介します。

    何かしらのトラブルと思われる事象が発生した場合、確認したいのがログファイルになります。
    各コンポーネント間のやり取りで、どこでどのようなトラブルが発生しているかを、それぞれログを取得して確認することができます。

    ① クライアント ⇔ Webサーバ間では、「Webサーバログ(IISやApacheのアクセスログなど)」、
    ② Webサーバ ⇔ Webゲートウェイ間では、「イベントログ」・「HTTPトレース」、
    ③ Webゲートウェイ ⇔ IRISサーバ間では、「ISCLOG」・「監査ログ」・「messages.log」などがあります。

    3 0
    0 137

    InterSystems Reports 23.2 がリリースされました。 WRC Direct のコンポーネントページで InterSystems Reports Designer および InterSystems Reports Server で検索することで、Mac OSX、Windows、Linux の各種プラットフォーム用キットを入手いただけます。 このバージョンでは、弊社パートナーである insightsoftware の Logi Report 23.2 に含まれる以下の素晴らしい機能が追加されています。

    0 0
    0 83

    以下は、InterSystems IRIS で使用するデータベース、ネームスペース、および Web アプリケーションを作成できる ObjectScript スニペットです。

        set currentNS = $namespace
    
        zn "%SYS"
    
        write "Create DB ...",!
        set dbName="testDB"
        set dbProperties("Directory") = "/InterSystems/IRIS/mgr/testDB"
        set status=##Class(Config.Databases).Create(dbName,.dbProperties)
        write:'status $system.Status.DisplayError(status)
        write "DB """_dbName_""" was created!",!!
    
    
        write "Create namespace ...",!
        set nsName="testNS"
        //グローバルの DB
        set nsProperties("Globals") = dbName
        //ルーチンの DB
        set nsProperties("Routines") = dbName
        set status=##Class(Config.Namespaces).Create(nsName,.nsProperties)
        write:'status $system.Status.DisplayError(status)
        write "Namespace """_nsName_""" was created!",!!
    
    
        write "Create web application ...",!
        set webName = "/csp/testApplication"
        set webProperties("NameSpace") = nsName
        set webProperties("Enabled") = $$$YES
        set webProperties("IsNameSpaceDefault") = $$$YES
        set webProperties("CSPZENEnabled") = $$$YES
        set webProperties("DeepSeeEnabled") = $$$YES
        set webProperties("AutheEnabled") = $$$AutheCache
        set status = ##class(Security.Applications).Create(webName, .webProperties)
        write:'status $system.Status.DisplayError(status)
        write "Web application """webName""" was created!",!
    
        zn currentNS
    

    1 0
    0 69

    IRISをアップグレードすると、SQLクエリオプティマイザの機能向上により、旧バージョンとは異なるクエリプランによるクエリ実行コード(クエリキャッシュ)が作成される場合があります。
    ほとんどの場合はパフォーマンスが向上するのですが、稀にパフォーマンスが低下するケースもあります。

    ・アップグレードによりオプティマイザが改善しているとはいえ、中には遅くなるクエリがあるのではないか?
    ・予期しないSQLの問題が起きるのではないか?
    ・アップグレード後に全てのクエリパターンをテストするには時間と労力がかかりすぎる

    このように、機能向上よりも安定性を優先して「今までのプランのまま実行したい」というご要望もあることでしょう。
    こちらの記事では、そのようなお客様への解決策をご案内します。

    2 0
    0 78

    cAdvisorContainer Advisor)は、実行中のコンテナのリソースの使用率とパフォーマンスデータを分析して公開します。 cAdvisor は初期設定のままで Prometheus メトリクスを公開します。

    https://prometheus.io/docs/guides/cadvisor/

    Prometheus は SAM に統合されています。 このため、cAdvisor メトリクスと利用して Prometheus と Grafana で公開することが可能です。

    cAdvisor はポート 8080 でリッスンしますが、これは Nginx のポートと競合するため、それに対応するように Nginx ポートを変更することができます。

    構成手順:

    1. nginx ポートを変更します。

    nghix.conf を変更します。

    0 0
    0 194

    ご好評をいただいておりますインターシステムズ主催 開発者向けウェビナーを次回は以下の通り開催いたします。

    日時:2023年9月26日(火)13時半~14時

    タイトル:「IRISデータベースの内部動作」(事前登録制・参加費無料)

    ご登録はこちらから

    【概要】

    InterSystems IRIS は、その独自のアーキテクチャにより、非常に高いパフォーマンスのデータベース管理を行っています。

    では、実際にデータの書き込み・読み込みが発生したとき、IRIS の内部ではどのような処理が行われるのでしょうか?

    0 0
    0 90

    開発者の皆さん、こんにちは!

    日本の InterSystems 開発者コミュニティで初となるコンテストを開催いたします!

    初回コンテストは、技術文書ライティングコンテストで InterSystems IRIS/InterSystems IRIS for Health に関連した内容であればどのような内容でもご応募いただけます。(応募記事一覧は以下👇URLよりご覧いただけます。)

    ✍ InterSystems Japan 技術文書ライティングコンテスト:IRISに関連した記事 ✍

    🎁 参加賞:投稿いただいた方全員に参加賞あります。

    🏆 特別賞:選ばれた3作品に特別賞があります。

    コンテストへの応募は簡単です!2023年9月6日(水)~11月6日(月)までの期間に開発者コミュニティに「IRISに関連した記事」を投稿してください(詳細は後述の「応募条件」「ボーナスポイント」をご参照ください)。

    投票期間延期のお知らせ📣:2023年11月13日(月)23時59分まで投票いただけるように期間を延長しました!

    5 4
    0 368

    Docker による Apache Web ゲートウェイ

    コミュニティの皆さん、こんにちは。

    この記事では、以下を使用して、Docker でプログラムによって Apache Web ゲートウェイを構成します。

    • HTTPS プロトコル
    • Web ゲートウェイと IRIS インスタンス間の安全な通信を確保する TLS/SSL

    画像

    イメージには、Web ゲートウェイ用と IRIS インスタンス用の 2 つを使用します。

    すべての必要なファイルは、こちらの GitHub リポジトリで入手可能です。

    では、git clone から始めましょう。

    0 0
    0 126

    突然ですが、みなさま、IRIS でのコーディングに Visual Studio Code をご利用されていますか? 以前投稿しましたように、2023.2からスタジオは非推奨 となっています。私自身も数年前からは VSCode 一本に移行しました。VSCode はご存じのように、ありとあらゆる項目でカスタマイズが可能となっており、一度慣れると、スタジオより見た目よく、自分好みに仕上げられ、何より動作が軽いのがお気に入りです。

    さて今日は、その VSode の見た目のカスタマイズのお話です。

    3 5
    0 185