Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
新型コロナウイルス感染者情報管理 by Redmine
Search
Ysaku
May 22, 2021
Programming
1
1.5k
新型コロナウイルス感染者情報管理 by Redmine
redmine.tokyo 第20回勉強会にて発表した資料です(一部修正しています)
https://redmine.tokyo/issues/1230
Ysaku
May 22, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
Exploring the Gradually Lost Technical Skills in the Cloud Native Era
hwchiu
2
3.9k
今こそ始める、CDKコンストラクトライブラリ開発 ― 入門から実践まで
tmokmss
1
930
Modern Angular: Renovation for Your Applications
manfredsteyer
PRO
0
140
CSC307 Lecture 12
javiergs
PRO
0
220
Webエディタライブラリ 「CodeMirror」から学ぶ Webアプリ開発のテクニック
ryosukeigarashi
0
250
企業向け生成AIアプリの 開発から得られた知見
takaakikakei
0
310
AWS CDKにおける「再利用性」を考える / aws-cdk-reusability
gotok365
6
1.3k
iOSアプリでクリップボードにコピーしたことをユーザーに伝えるちょうど良いフィードバックを探す
ski
0
100
君たちはどうコードをレビューする (される) か / 大吉祥寺.pm
utgwkk
15
8.5k
Prompt FlowによるLLMアプリケーション開発
yuto2000
1
1k
さきがけから振り返るアーキテクチャ刷新 / Reflecting on the Architectural Renewal from the Vanguard
nrslib
2
780
TiDB Serverless ~理想のServerless DBを考える~
soso_15315
1
160
Featured
See All Featured
Six Lessons from altMBA
skipperchong
24
3.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.8k
Scaling GitHub
holman
458
140k
Fireside Chat
paigeccino
25
2.8k
Navigating Team Friction
lara
181
13k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
105
6.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
Why Our Code Smells
bkeepers
PRO
332
56k
The Brand Is Dead. Long Live the Brand.
mthomps
52
36k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
Transcript
新型コロナウイルス感染者情報管理 by Redmine redmine.tokyo 第20回勉強会 Ysaku, 2021/5/22
自己紹介 • 居住地: 山梨県 • 業種: 製造業・生産技術 • Redmine 使用歴:
約2年 • 様々な業務上での課題の進捗管理に活用
目次 • サイトの作成経緯 • サイトの紹介 • 概要 • 動作環境 •
プラグイン • パッチ • 更新の仕組み • 山梨県 • 長野県 • 課題 • 展望
サイトの作成経緯 山梨県/新型コロナウイルス感染症に関する発生状況等 https://www.pref.yamanashi.jp/koucho/coronavirus/info_coronavirus_prevention.html 問題点 • 関連情報の追跡が困難 • 特定の情報の抽出が困難 抜粋 Redmine
の項目に当てはめれば 見やすくなるのでは…? リ ン ク の 無 い 数 万 行 の 文 字 列 … ただの文字列
サイトの紹介 https://cov19jp.info Theme: • PurpleMine2 Plugins: • redmine_cfreport 0.0.4※ •
redmine_custom_auto_complete 0.0.1 • redmine_issue_title_changer 0.0.1※ • redmine_message_customize 0.1.0 • redmine_tags 4.0.0※ • view_customize 2.7.0 Patch: • QA #1192: Redmineの活動画面に、チケット の変更を全て表示する。 - Unofficial Redmine Cooking - redmine.tokyo ※独自カスタマイズ
サイトの紹介 都道府県一覧 (プロジェクト一覧) 感染者一覧 (チケット一覧) 感染者情報 (チケット) カレンダー表示
動作環境 • サーバー: • Conoha VPS(最小構成: 682円/月(1.1円/時)) • メモリ: 512MB
• CPU: 1Core • OS: • CentOS 8 • Redmine: • RedMica version 1.2.0.devel.f2cb1f1 (based on Redmine 4.1.1.devel.20401) • DB: • PostgreSQL 10.14
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin
プラグイン 一部抜粋 225行のYAMLで管理 • Redmine message customize plugin • View
Customize plugin • Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin source: https://github.com/ishikawa999/redmine_message_customize
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 様々なJavaScript/CSSを適用中 source: https://github.com/onozaty/redmine-view-customize
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 感染者一覧表示画面 ID列非表示 モバイル環境で 表示を切り替え IDを題名に置き換え https://cov19jp.info/projects/nagano/issues source: https://github.com/onozaty/redmine-view-customize タイトル(〇〇例目) をIDのデザインに変更
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 詳細表示画面 履歴非表示 https://cov19jp.info/issues/5340 source: https://github.com/onozaty/redmine-view-customize
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 詳細表示画面(一覧表示画面、カレンダーでも対応) https://cov19jp.info/issues/5849 source: https://github.com/onozaty/redmine-view-customize
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 症状等をタグで分類 サマリー表示 (独自カスタマイズ) https://cov19jp.info/projects/nagano/issues source: https://github.com/sk-ys/redmine_tags/tree/test
プラグイン or フィルター (標準) and フィルター (独自カスタマイズ) ※JavaScript 必須 •
Redmine message customize plugin • View Customize plugin • Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin https://cov19jp.info/projects/nagano/issues source: https://github.com/sk-ys/redmine_tags/tree/test
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin テキスト書式カスタムフィールドを検索可能に (View Customize Plugin で暫定カスタマイズ) https://cov19jp.info/projects/yamanashi/issues source: https://github.com/taikii/redmine_custom_auto_complete ViewCustomize#23 • 非公開(ソースコードでは確認可能) • 可能であればプラグインへ反映したい…
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin カスタムフィールドを レポート表示 …課題 https://cov19jp.info/projects/nagano/issues/report source: https://github.com/sk-ys/redmine_cfreport
プラグイン • Redmine message customize plugin • View Customize plugin
• Redmine Tags • Redmine Custom Auto- Complete plugin • Redmine CFReport plugin • Redmine Issue Title Changer plugin 4031例目 - 長野県 - 新型コロナウイルス感染者情報(非公式) 報告 #5340: 4031例目 - 長野県 - 新型コロナウイルス感染者情報(非公式) コメント: 暫定的に作成したが、汎用性を持たせたプラグインとして 公開出来れば… source: https://github.com/sk-ys/redmine_issue_title_changer
パッチ • QA #1192: Redmineの活動画面に、 チケットの変更を全て表示する。 - Unofficial Redmine Cooking
- redmine.tokyo https://cov19jp.info/projects/yamanashi/activity?from=2021-05-20 カスタム フィールド https://redmine.tokyo/issues/1192
更新の仕組み - 山梨県 www.pref.yamanashi.jp cov19jp.info ローカル • WEBから感染者情報を取得 • 山梨県/新型コロナウイルス感染症に関する発生状況等
• https://www.pref.yamanashi.jp/koucho/coronavirus/info_coronavirus_prevention.html 差分確認 Beautiful Soup • 情報取得経路 • で情報取得~Redmineの更新を行う
例 - 山梨県 https://cov19jp.info/issues/5105 ↓ ※更新がある場合、書き換えとなる
例 - 山梨県 https://cov19jp.info/issues/5105 ↓ ※更新がある場合、書き換えとなる
例 - 山梨県 https://cov19jp.info/issues/5105 ↓ ※更新がある場合、書き換えとなる カテゴリー カスタムフィールド (長いテキスト) 開始日
期日 題名 関連するチケット ステータス 重要度 感染, 回復, 死亡, 回復または死亡, 不明, 取り下げ カスタムフィールド 説明
更新の仕組み - 長野県 • 以下のサイトから情報を取得 • 発生状況オープンデータ • https://www.pref.nagano.lg.jp/hoken- shippei/kenko/kenko/kansensho/joho/documents/200000_nagano_covid19_patients.csv
• 性別、年代、居住地、職業、感染状況、回復フラグ等 • ファイルタイプ: CSV • プレスリリース一覧 • https://www.pref.nagano.lg.jp/kansensho-taisaku/happyou/20210210.html • 性別、年代、居住地、職業、症状、経過、行動歴、接触者、市No.等 • ファイルタイプ: PDF • データに関して • 公開方法の変更が多い • (以前はWeb、RSSから取得していた時期もあった) • フォーマットの変更が多い • PDFは表記ゆれが多いため、なるべく共通項目はCSVから取得
更新の仕組み - 長野県 www.pref.nagano.lg.jp cov19jp.info 差分確認 長野県 長野市 松本市 オープンデータ
ローカル オープンデータ x3 PowerQuery • 情報取得経路 • で情報取得~Redmineの更新を行う
Pythonでの更新の様子
例 – 長野県(松本市) https://cov19jp.info/issues/5944 No 4472 都道府県名 長野県 市区町村名 松本市
事例確定_年月日 2021/5/19 患者_居住地 松本市 患者_年代 20代 患者_性別 女性 患者_職業 自営業従業員 患者_状態 無症状 患者_渡航歴の有無フラグ 0 患者_退院等済フラグ 0 備考 オープンデータ PDF
No 4472 都道府県名 長野県 市区町村名 松本市 事例確定_年月日 2021/5/19 患者_居住地 松本市
患者_年代 20代 患者_性別 女性 患者_職業 自営業従業員 患者_状態 無症状 患者_渡航歴の有無フラグ 0 患者_退院等済フラグ 0 備考 例 – 長野県(松本市) https://cov19jp.info/issues/5944 オープンデータ PDF
課題 • 一部が手動対応のまま • 県や市の更新情報の反映 … 突然フォーマットが変更になるため完全自動化が困難 • 関連する感染者の追加 …
頑張ればできそう、「100~105例目」等への対応 • タグの追加 … 表記ゆれへの対応、Redmine Tags プラグインのAPI対応 • サマリー関連 • 表示の崩れ、表示速度、モバイル最適化 • サーバーが貧弱 • 暫定的にJavaScript で書き換えている部分が多い → 本体のカスタマイズが必要 • 更新用Python スクリプトが公開できる状態にない
展望 • 対応都道府県の追加 • サーバー増強 • 更新者の追加 • (各都道府県市町村担当者に対応いただくのが理想?) •
グラフの追加 • 統計情報の充実 • 関連する感染者のグラフ表示 • 地図表示 • 新型コロナウイルスの一日も早い収束