Skip to content

FAQ GraphvizOutput

irof edited this page Mar 20, 2022 · 1 revision

このページはGraphvizによる画像出力に失敗している場合の原因と対処です。

基本

JIG-ERDは以下の順番で処理しています。

  1. 対象情報を読み込む
  2. JIGモデルを組み立てる
  3. DOTファイルを出力する
  4. DOTファイルを画像に変換する(フォーマットが PNG もしくは SVG の場合)
  5. DOTファイルを削除する

画像出力での失敗は4での失敗のため、DOTファイルを使用することで原因分析や対処ができます。

原因別

出力の時間がかかりすぎている

画像変換のタイムアウトは5秒となっています。 これを変更する設定は今のところありません(必要ならIssueかPRください)。

タイムアウトしている場合、DOTファイルを自身で dot コマンドで処理することでタイムアウトの制約は外せます。

以下はSVGで出力する場合のコマンドです。

dot -Tsvg -o {出力ファイルパス} {DOTファイルパス}

不正なDOTファイルを処理しようとしている

変換できないDOTファイルが出力されることがあります。 DOTコマンドのエラーログが出ている場合はこれに該当します。

基本的にはJIG-ERDの不具合です。 このようなDOTファイルはdotコマンドで処理しても出力できません。

DOTファイルを手直ししてみると出力できるかもしれません。 Issueをくれると嬉しいです。

Graphvizの不具合

DOTファイルに問題がなくても、稀にGraphvizの不具合で出力できたりできなかったりします。 可能ならGraphvizのバージョンを変えてみてください。

DOTファイルの書き方で対応できるものがあるかもしれませんので、発生するDOTファイルをIssueでくれると嬉しいです