SLA 用の JQL クエリを作成する

SLA (サービス レベル アグリーメント) を作成する際、JQL クエリでは特定の順序に従う必要があります。また、SLA クエリの作成時によく使用される関数や演算子のほか、クエリで特定の機能を実行するために Jira で予約されている文字や単語もあります。JQL フィールドの詳細をご確認ください

クエリの要素

JQL では 1 つのクエリに 4 つの基本要素があります。

フィールド

フィールドとは、システム内のさまざまなタイプの情報のことです。たとえば、Jira Service Management のフィールドには、優先度、作業タイプ、作成日、プロジェクトなどがあります。

演算子

演算子はクエリの中心であり、フィールドと値とを関連付けます。一般的な演算子には、等しい (=)、等しくない (!=)、より少ない (<) などがあります。

値は、クエリ内の実際のデータです。例: paused() および remaining(“2h”)。

関数

関数とは、特定のデータにアクセスするために使用される、Jira 内での特別な計算です。たとえば、SLA 違反になった作業項目などがこれに該当します。

オプションとして、いくつかの選択キーワードでクエリ同士をリンクすることができます。キーワードは、特別な意味を持つ、言語での特定の単語です。例として、AND や OR などがあります。

JQL のシンプルなクエリは、フィールド演算子、1 つ以上のまたは関数 の順に構成されます。

例: project = Test

上記のクエリは Test プロジェクトのすべての作業項目を検索し、project (フィールド) 、等号 = (演算子)、Test () を使用します。

SLA クエリの作成時に一般的に使用される関数

以下、SLA 用に JQL クエリを作成する際によく使用される関数です。

breached()

前回の SLA サイクルがサービス目標の達成に失敗した作業項目をフィルターで除外します。

everBreached()

サービス目標の達成に失敗した作業項目をフィルターで除外します。

paused()

現在の SLA サイクルが特定の条件によって一時停止している作業項目をフィルタで抽出します。たとえば、作業項目のステータスが "顧客待ち" の場合に作業項目の SLA クロックを一時停止できます。

completed()

SLA サイクルが完了した作業項目、つまり、停止イベントのいずれかに到達した作業項目をフィルタで抽出します。

running()

SLA クロックが実行中の作業項目、つまり停止イベントのいずれかに到達していない作業項目をフィルタで抽出します。

withinCalendarHours()

条件ではなく SLA カレンダーに従って、SLA クロックが実行中または実行中ではない作業項目をフィルタで抽出します。

elapsed()

進行中の SLA サイクルの開始イベント以降に SLA サイクルのクロックが指定された時間条件を満たす作業項目をフィルタで抽出します。

remaining()

SLA サイクルのクロックが、SLA 目標に関連する指定された時間条件を満たす作業項目をフィルターで抽出します。

注意: この機能には、違反になった項目と違反になっていない項目の両方が含まれます。

  • 正の値は違反までの残り時間を示します (例: remaining("2h") は残り 2 時間を意味します)。

  • 負の値は、違反からの経過時間を示します (例:remaining("-30m") は、30 分前に違反になったことを意味します)。

よく使用される演算子

SLA の JQL クエリで使用できる一般的な文字や単語演算子をご紹介します。

文字

=、>、>、=、~、!=、<、<=、!~

単語

not、in、is not、was、not、was not、in、not in、is、was、was in、changed

予約文字と予約語

クエリで使用する際には特定の方法を使用する必要がある、Jira の予約文字と予約語の一部を紹介します。

文字

スペース (" ")、+、.、;、?、|、*、/、%、^、$、#、@、[ ]、 、

単語

a、and、are、as、at,、be、but、by、for、if、in、into、is、it、no、not、of、on、or、s、such、t、that、the、their、then、there、these、they、this、to、was、will、with

クエリに予約文字や予約語を使用する場合は、以下が必要となります。

  • 引用符で囲みます。1 組の引用符または二重引用符を使用できます。例: 'Time to first response'。

  • テキスト フィールドでの検索を行おうとしていて、対象の文字が予約文字または予約語のリストに含まれる場合は、手前に 2 つのバックスラッシュを付けます。例: \\'Time to first response'

JQL の例: SLA 目標を達成していない作業項目を見つける

たとえば、初期応答目標を達成したプロジェクトの作業項目をすべて見つけるには、以下のクエリを使用します。

“Time to first response“ != everBreached ()

JQL の例: SLA クロックに基づいて作業項目を見つける

たとえば、初回応答を 10 分未満待っているリクエストを検索する場合、以下のクエリを使用します。

"Time to first response" < elapsed("10m")

または、既に違反している項目を含めて、これから 2 時間以内に解決目標を達成できない作業項目を見つけるには、以下のクエリを使用します。

"Time to resolution" < remaining ("2h")

ヒント: 結果から違反項目を除外するには、>= remaining("0h") を使用するか、!= breached() と組み合わせます。

 

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。