SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
2019/11/02 第17回 redmine.tokyo @ TOKYO
KOHEI NAKAMURA
全文検索
プラグインのすすめ
自己紹介
オープン系エンジニア:10年
→メーカー(工場)の情シス: 6年
Redmine歴: 10年 管理者歴: 7年
全社 Redmineを 6年運用していて、
日々よりよい活用法を模索中
Kohei Nakamura
@neta
発表: 「ある工場の Redmine」ほか
本日伝えたいこと
全文検索プラグイン
はいいぞ
“Full text search plugin”
Redmine の検索機能を
拡張するOSSプラグイン
株式会社クリアコード様と株式会社島津製作所様の共同開発
https://github.com/clear-code/redmine_full_text_search
全文検索
プラグインとは
2019/08/31 第20回 Redmine 大阪
『Redmine全文検索システムの実際』
Kuniharu AKAHANE
きっかけ
赤羽根さんが
本番導入したらしい
ようし ウチもやろう!
導入できました!
結構むずかった・・・
全文検索
プラグイン導入
【ToDo】
1. 動作環境確認
2. Mroonga インストール
3. Full text seach プラグイン インストール
4. Full text seach プラグイン インデックス作成
Mroonga とは
ストレージエンジンの例 : InnoDB, MyISAM
Mroonga は検索が得意なやつ
https://mariadb.com/kb/ja/choosing-the-right-storage-engine/
Mroongaについて
MroongaはMySQL用のストレージエンジンです。
すべてのMySQLユーザーに高速な日本語全文検索機能を提供します。
http://mroonga.org/ja
完全に理解した
Full text search plugin 1.0.4
→ Redmine 4.0〜, Mroonga 9.0.3〜
ちょっと古い環境はダメ
(ex. Redmine 3.x, CentOS 6.x)
http://mroonga.org/ja/blog/2019/08/29/mroonga-9.07.html
動作環境
動作環境OK
• Redmineバージョン 4.0.3 (SVN)
• OS : Linux CentOS 7.2
• Ruby 2.5.5 Rails 5.2.3
• Apache 2.4.6, MariaDB 10.1 + Mroonga 9.0.7
• 仮想サーバ:Mem 4G , CPU 2 Core , Disk 20 GB
• ユーザ数 : 300 チケット数 : 27,000
• 使用しているプラグイン : 14
• Full text search plugin 1.0.4
2016/11/26 第11回 redmine.tokyo
『ある工場はこれで Redmine の
バージョンアップを決意した』
Redmine の
バージョンアップを
しちゃいましょう♪
以前 Redmine 2.5 の頃
MySQL が古くて
Full Text search 導入できなかった
動作環境NG
Mroonga
インストール
【Mroonga】インストール
http://mroonga.org/ja/docs/install.html
各環境ごとに説明あり
(Win,Mac,Linux…)
【Mroonga】インストールチ
ェック
http://mroonga.org/ja/docs/tutorial/installation_check.html
問題発生
Mroonga バージョン確認が NG
9 のはずが 7 になってる
削除&登録しなおしで解消
mysql > SHOW VARIABLES LIKE 'mroonga_version';
+-----------------+-------+
| mroonga_version | 7.07 |
+-----------------+-------+
/bin/mysql < /usr/share/mroonga/uninstall.sql
/bin/mysql < /usr/share/mroonga/install.sql
+-----------------+-------+
| mroonga_version | 9.07 |
+-----------------+-------+
プラグインを
インストール
手順に従い、
インストール→Redmine 再起動
https://github.com/clear-code/redmine_full_text_search
cd redmine/plugin
git clone https://github.com/clear-code/redmine_full_text_search.git plugins/full_text_search
bundle update
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
(redmine restart)
問題発生
やだー!
検索テスト
→検索結果 0件
これ
あかんやつ
全文検索
プラグイン導入
【ToDo】
1. 動作環境確認
2. Mroonga インストール
3. Full text seach プラグイン インストール
4. Full text seach プラグイン インデックス作成
あっ
インデックス作成
まだやることがありました
バッチを実行して、インデックスを作ります
だからお前はアホなのだ
ぁあああーーッッ!!
問題発生
バッチ実行
3時間経過
エラー出たぁ!
もう帰りたい
やだー!
たすけて!
困ったときは
「たすけて」
→ Twitter , Slack
なんとかなった
文字コードの問題っぽい
再実行して、
その後のが入ればいいのでは
なるほど 入ってるわ👍
!
外字のせいだ
ま いっか
よかったこと①
チケットが探しやすい!
ソートできる
● スコア/時系列表示
● 降順/昇順切り替え
絞り込みできる
● 担当者
● ステータス
● トラッカー
● 添付ファイル
よかったこと②
チケットが探しやすい!
● AND/OR
ex). redmine.tokyo OR Redmine大阪
● NOT検索
ex). 勉強会 - Redmine
よかったこと③
非常に高速
● 導入前: 〜3秒
● 導入後: 1秒未満
まとめ
全文検索プラグインは
いいぞ
重要度 プラグイン名 説明
A Redmine Wiki Extensions plugin オートプレビュー、タブにWikiリンク貼り付け、PJごとにテーマ変更
A view customize plugin 画面をJavaScript/CSSで簡単にカスタマイズできる
A Redmine jsToolbar Extension wikiツールバー拡張
A Redmine jsToolbar Buttons Extension wikiツールバーボタン追加(赤・青文字、UNCリンク、折りたたみ、画面呼び出し)
A Redmine Wiki Unc plugin ファイルサーバへのリンクを貼れる
B Redmine Auto Done 100% チケット終了時に進捗率を自動で100%にする
B Redmine Default Custom Query チケット一覧にデフォルトのカスタムクエリを設定できる
B Redmine Banner Plugin お知らせ用バナー表示ができる
B Redmine Checklists plugin チケットにチェックリストを付与できる
B Sidebar Hide Plugin サイドバーを隠せる
B Redmine Issue Templates チケットのテンプレートを作成できる
B Full Text Search plugin Redmine 検索機能の拡張
C Redmine Wiki Lists plugin 特定の単語等で抽出したチケット一覧が作れる、自分が更新したチケット一覧表示
C Lychee Gantt Chart Pro ガントチャート機能拡張
利用プラグイン
(Redmine 4.0.3 + 14 プラグイン)
Thanks!
【Special】Full text search plugin
株式会社クリアコード 須藤 功平
株式会社島津ビジネスシステムズ 赤羽根 州晴
【WebSite】
Redmine : Jean-Philippe Langほか Redmine開発チーム
Redmine.JP : 前田 剛
Redmine.JP Blog : ファーエンドテクノロジー株式会社
プログラマの思索 : あきぴー
Enjoy*Study : onozaty (View Customize Pluginほか )
日々是精進。 : akiko_pusu
【Books】
『入門Redmine 第5版』前田 剛
【Others】
Redmine プラグイン 作者の方々
redmine.tokyo http://redmine.tokyo/
Discord Redmine Community https://discord.gg/tHgdVSj
"Icons are based on 'Material Design Icons' by Google. Licensed under CC BY."

Mais conteúdo relacionado

Mais de Kohei Nakamura

Redmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたRedmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたKohei Nakamura
 
ある工場の Redmine バージョンアップ
ある工場の Redmine バージョンアップある工場の Redmine バージョンアップ
ある工場の Redmine バージョンアップKohei Nakamura
 
ある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したKohei Nakamura
 
ある工場の Redmine 2016
ある工場の Redmine 2016ある工場の Redmine 2016
ある工場の Redmine 2016Kohei Nakamura
 
ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】Kohei Nakamura
 
【Redmine】ツールバーボタンを作ろう
【Redmine】ツールバーボタンを作ろう【Redmine】ツールバーボタンを作ろう
【Redmine】ツールバーボタンを作ろうKohei Nakamura
 
ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)Kohei Nakamura
 
ある工場のRedmine
ある工場のRedmineある工場のRedmine
ある工場のRedmineKohei Nakamura
 

Mais de Kohei Nakamura (8)

Redmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたRedmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみた
 
ある工場の Redmine バージョンアップ
ある工場の Redmine バージョンアップある工場の Redmine バージョンアップ
ある工場の Redmine バージョンアップ
 
ある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意した
 
ある工場の Redmine 2016
ある工場の Redmine 2016ある工場の Redmine 2016
ある工場の Redmine 2016
 
ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】
 
【Redmine】ツールバーボタンを作ろう
【Redmine】ツールバーボタンを作ろう【Redmine】ツールバーボタンを作ろう
【Redmine】ツールバーボタンを作ろう
 
ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)
 
ある工場のRedmine
ある工場のRedmineある工場のRedmine
ある工場のRedmine
 

Último

How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...software pro Development
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 

Último (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

Redmine 全文検索プラグインのすすめ<Full text search plugin>