Fluentd v1.14.4リリース -- データ格納の改良とmacOSバグの修正
2022年1月6日にFluentdの最新版となるv1.14.4をリリースしました。これが2022年を迎えて最初のリリースになります。
このブログ記事では、v1.14.4のリリースのポイントについて、Fluentdのメンテナの観点から解説を加えようと思います。 開発された機能項目だけではなく、その背景と経緯についても説明を加えますので、 これを読めばFluentdの最新の開発動向がつかめるはずです。
xrdpでクリップボードの挙動をより細かく制御できるようになりました
xrdpはWindowsのリモートデスクトップ接続を使ってLinuxに接続できるようにするソフトウェアです。
今回は、サイバートラスト株式会社様からの発注を受けて開発した、クリップボードの挙動をより細かく制御する機能を紹介します。
Fluentd v1.14.5リリース -- ndjson形式対応と細かな動作改善
2022年2月9日にFluentdの最新版となるv1.14.5をリリースしました。
クリアコードはFluentdの開発に参加し、リリースを含めたメンテナンス作業を行っています。
今回はv1.14.5のリリースについて、主なポイントを紹介します。
Firefoxの強制シングルプロセス動作と、シングルプロセス動作時のリスク
現行バージョンのFirefoxは、原則としてマルチプロセスで動作しています。 この記事では、Firefoxのマルチプロセス動作を無効化した時に起こる問題の例を紹介します。
QEMU/KVMのWindows仮想環境上でHyper-Vを使用する方法
Groongaという全文検索エンジンの開発に参加している橋田です。
Windows仮想環境(以下、Windowsゲストと表記します)を構築して、その中でHyper-Vを使用する機会がありました。
今回は、QEMU/KVMを使ってWindowsゲストでHyper-Vを使用する方法について紹介します。
Hyper-VはDocker DesktopやWSL2でも利用されるため、Windowsゲストでこれらを使用する際にも必要な設定となります。
WindowsでGroongaのメモリ使用量を記録する方法
Groongaという全文検索エンジンの開発に参加している橋田です。
Groongaではよくメモリ使用量を測定します。
筆者がWindowsで測定することが多いため、今回はWindowsでおすすめのGroongaのパフォーマンスログの記録方法と設定内容について紹介します。
パフォーマンス モニター(GUI)を使用した方法と、typeperfコマンド(CUI)を使用した方法の2つを紹介します。
Redmineを使った技術サポートサービスの運用効率改善事例 #RedmineJapan
結城です。
2022年2月25日に開催されたREDMINE JAPAN vol.2において、「Redmineを使った技術サポートサービスの運用効率改善事例」と題した発表を行いました。 当日の発表内容を改めてご紹介します。
OSSを継続的にメンテナンスしていく仕組みづくり – Fluentdの事例とその最新情報についてOSC 2022 Online Springで発表しました
林です。
2022年3月11日・12日に開催されたOpen Source Conference 2022 Online Springにおいて、「OSSを継続的にメンテナンスしていく仕組みづくり – Fluentdの事例とその最新情報」と題した発表を行いました。 二日目のD会場にて実施した発表内容を紹介します。
Fluentd v1.14.6リリース -- リトライの修正と細かな動作改善
2022年3月31日にFluentdの最新版となるv1.14.6をリリースしました。
クリアコードはFluentdの開発に参加し、リリースを含めたメンテナンス作業を行っています。
今回はv1.14.6のリリースについて、主なポイントを紹介します。
フリーソフトウェアライセンス(オープンソースソフトウェアライセンス)入門
最近、フリーソフトウェア(オープンソースソフトウェア)をいざ公開しようと思った時に、ライセンスの扱いに困った福田です。
ライセンスには様々な種類があり、シンプルなライセンスもあれば制限の強そうなライセンスもありますよね。私は最初、自分で選ぶならシンプルで制限が少ないライセンスの方が良いかな、と深く考えずに思ってしまいました。しかし、制限が強いということは、それだけ強い保護が受けられる、ということでもあると知り、世界がひっくり返ったような衝撃を受けました。
ライセンスには様々な種類があり、そこには様々な考え方がありますが、今回はフリーソフトウェアを大事にしたい場合のお勧めのライセンスの選び方や、使い方を紹介します。
Bio"Pack"athon 2022 #4 - Treefitのパッケージング
Bio"Pack"athon 2022 #4で「Treefitのパッケージング」という話をした須藤です。Treefitとはなにかも簡単に説明しつつTreefitのパッケージングまわりのことを説明します。
メール誤送信対策製品「FlexConfirmMail」のMicrosoft Outlook版をリリースしました
1. 概要
クリアコードでは FlexConfirmMail というフリーソフトウェアを開発しています。もともと2013年からThunderbird向けに開発を始めたメール誤送信対策製品で1、現在も国内外で数万ユーザーに利用されている割とポピュラーな製品です。
先週、FlexConfirmMailをMicrosoft Outlook向けに移植したバージョンを公開しました。MicrosoftのOffice APIを利用して一から実装したもので、Thunderbirdで実証済みの誤送信対策がMicrosoft Outlookでも使えるようになりました。
この記事では「誤送信対策を始めたい」・「会社で対策が必要だがどこから手を付けていいか分からない」といった企業の担当者の方を主なターゲットとして、この新しいアドインについてご紹介します。
Apache Arrowの最新情報(2022年5月版)
Apache ArrowのPMC chair(プロジェクトリーダーみたいな感じ)の須藤です。2022年5月時点のApache Arrowの最新情報を日本語で紹介します。
Groonga delta - 差分ベースでMySQL/MariaDBのデータをGroongaに取り込むツール
Groonga deltaというMySQL/MariaDBのデータをリアルタイムでGroongaに同期するツールを開発した須藤です。どのような使い方・設計・実装になっているかを説明します。
Fluentd v1.15.0リリース -- YAML形式サポートなどの新機能とin_tailの不具合修正
2022年6月29日にFluentdの最新版となるv1.15.0をリリースしました。
クリアコードはFluentdの開発に参加し、リリースを含めたメンテナンス作業を行っています。
今回はv1.15.0で追加された新機能を中心に紹介します。
クリアコードで働いて知ったことと思ったこと
クリアコードで、コードを書く以外の仕事をしている吉本です。 この記事では、クリアコードで働くことがどんな感じなのかをお伝えします。 2021年4月ごろからクリアコードで働き始めた私がどんなことを知って、どんなことを思ったかを紹介します。
オープンな開発をできる仕事 @ クリアコード
クリアコードに入社して半年強ほど経過した福田です。
今回は、入社した経緯や、クリアコードで働いてみて思ったことをご紹介します。
いろいろお話ししたいことはありますが、やはり何と申しましてもクリアコードといえば「フリーソフトウェアで稼ぐ」という理念です。
この理念自体、斬新さ、面白さ、やりがい、等々多くのことを味わえるものですが、 「エンジニアとしてオープンな開発をできる」ということも非常に魅力的です。
現在一緒に働く人を募集しているので、少しでもクリアコードの仕事に興味のある方はぜひご覧ください!
クリアコードに入社した理由と入社後の変化 - フリーソフトウェアについてはよく知らないけど「コードがたくさん書けそう」という理由で応募し、その後フリーソフトウェア開発のスタイルに慣れるまでの変化 -
入社してはや5年目になりました。 入社した当初に入社エントリーを書いていなかったので、今更ですがクリアコードに入社した理由と、入社後に私がどう変化したかを紹介しようと思います。 入社当時の気持ちを思い出しながら書いていきます。
クリアコードの入社経緯と入社して思ったこと: 働きやすく、開かれた環境
クリアコードに入社して5ヶ月経過した橋田です。
今回は、私が入社した経緯と、クリアコードで働いていて思ったことをご紹介します。
クリアコードは現在一緒に働く人を募集しているので、クリアコードで働いてみたいと考えている方に少しでも参考になればと思います。
GitHub Actions: VirtualBoxを使って.deb/.rpmパッケージをテストする
最近GNU/Linux系のパッケージング周りの仕組みに初めてチャレンジしている福田です。
GitHub Actionsにおける.deb/.rpmパッケージのテストにVirtualBoxが便利だったので、今回はその方法についてご紹介します。
Fluentd v1.15.1リリース -- プラグイン共通の排他機能の追加
2022年7月27日にFluentdの最新版となるv1.15.1をリリースしました。
クリアコードはFluentdの開発に参加し、リリースを含めたメンテナンス作業を行っています。
v1.15.1では、out_fileに関する修正を行いましたが、それに伴い共通機能として排他機能を追加しました。
この新機能を利用頂くことで、Outputプラグインをマルチワーカーに簡単に対応させられるようになりました。
今回は、この修正について詳しくご紹介します。
GNU/Linuxの共有ライブラリーのバージョンとアプリケーションバイナリインターフェース(ABI)
最近、GNU/Linuxの共有ライブラリーのビルドシステムの改良業務をしている福田です。
共有ライブラリーのバージョンについて考えるには、共有ライブラリーの構成の仕組みと、アプリケーションバイナリインターフェース(ABI) という概念について把握する必要がありました。
普段何となく共有ライブラリーを利用する側としてはあまり意識してきませんでしたが、 共有ライブラリーを作って提供する側にとっては重要な概念です。
GNU/Linuxシステムにおいて、共有ライブラリーのメジャーバージョンは、その他の桁のバージョンに比べて特別な意味を持ちます。 メジャーバージョンが変わることは、アプリケーションバイナリインターフェース(ABI)の互換性がなくなることを示すことが一般的です。
本記事では、共有ライブラリーの構成とABIについて紹介します。
Red Hat Enterprise Linux系OSの種類やバージョンを見分ける方法
最近GNU/Linux系のパッケージング周りの仕組みに初めてチャレンジしている福田です。
複数のプラットフォームを想定する場合、動作しているプラットフォームを見分けることが必要になります。
今回は、Red Hat Enterprise Linux系OSの種類とバージョンの見分け方をご紹介します。
Mesonを使ってGObject Introspection対応のビルドシステムを構築する方法
最近、milter managerというフリーソフトウェアを Mesonというビルドシステムに対応させる作業を行っている福田です。
その主な目的は、RubyやPython用のバインディングを自動で生成できるようにすることです。
ライブラリーがGObjectを利用している場合、 GObject Introspectionを使えば(ほぼ)自動でバインディングを生成できます。
MesonにはGObject Introspectionサポート(Meson Integration) が組み込まれているので、Mesonを使うと簡単にGObject Introspectionを利用できます。
今回は、Mesonを使ってGObject Introspection対応のビルドシステムを構築する方法を説明します。
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow #rubykaigi
RubyKaigi 2022でFast data processing with Ruby and Apache ArrowというApache Arrowを使ってRubyで高速にデータ処理する話をした須藤です。
RubyKaigi 2022に現地参加してきました! #rubykaigi
9月の8, 9, 10日に三重で開催されたRubyKaigi 2022に現地参加してきた福田です。
今回初めて現地参加をして、Rubyってカッコ良い!面白そう!と感銘を受けました。
本記事では、RubyKaigiに参加して感じたことを紹介します。
RubyKaigi 2022 after event for Fast data processing with Ruby and Apache Arrow #rubykaigi
この記事は9月22日にYouTube Liveで放送した RubyKaigi 2022 after event for Fast data processing with Ruby and Apache Arrow のまとめです。
Apache ArrowのPMC chairである須藤が話し手、たなべさんを聞き手として、Apache Arrowに関する質問に回答をするという趣向の放送でした。
#Fluentd トラブル相談 3 - Windows版のtd-agent 4でメモリリークが発生する
第3回目、久しぶりのFluentdトラブル相談のご紹介です。 今回は「Windows版のtd-agent v4で使用メモリが右肩上がりに上昇していく」という事例です。

RubyKaigi2022でRuby3とFluentdの講演をしてきました #rubykaigi2022
2022年9月8〜10日に開催されたRubyKaigi 2022に講演者として参加してきました。
この記事では、カンファレンスに参加して印象に残った講演や出来事について書きます。
Google Chrome拡張機能のManifest V3におけるwebRequestでのブロッキングの継続利用
2020年に発表され、2021年のGoogle Chrome 88以降のバージョンで既に利用可能となっている、Chrome用拡張機能の仕様の大規模アップデートである「Manifest V3」では、それまであったwebRequestと呼ばれるAPIが廃止されています。
ですが、いつまで可能かという期間は明記されていないものの、主に法人運用向けとして、特定の条件を満たすことでこのAPIの利用を継続できるようになっています。
この記事では、webRequestによるブロッキングをManifest V3でも行う具体的な方法について解説します。
作業環境からアクセスできないホストのTLS証明書に関するブラウザーの挙動を検証する方法
はじめに
クリアコードでは、Firefoxサポートサービスの一環として、お客さまからの要望に基づいてカスタマイズしたFirefoxの提供もしています。 要望のなかには、特定のホストの証明書の例外を自動的に承認したいというものがあります。
例外として登録しておくサーバーがお客様の環境からしかアクセスできない事例もあり、要望の通りにカスタマイズできているかを事前に検証するためには、 テスト用の証明書を用意して確かめる必要がでてきます。
今回は、先述のFirefoxのカスタマイズの検証を例として、TLSで通信する特定のホストを対象としたブラウザーの動作をローカルで検証する方法を紹介します。
GitHub Actionsでccacheを使ってCMake+Microsoft Visual C++のビルドを高速化
Apache ArrowとかMroongaとかいくつかC++ベースのビルドに時間がかかるプロジェクトの開発をしている須藤です。ccacheを使うことでこれらのプロジェクトのCI時間を短くする方法を紹介します。
Thunderbird 102の法人向け変更点ご紹介
結城です。
去る2022年10月13日、Thunderbird 102.3.3がリリースされました。 これと同時に、9月20日付けでリリースされたThunderbird 91.13.1のサポートが正式に終了し、自動更新を通じて91.13.1の次のバージョンとしてThunderbird 102が提供されるようになりました。 管理者側で自動更新を停止している場合を除き、すでに更新が適用された環境がほとんどなのではないでしょうか。
この記事ではThunderbird 102のリリースノートに記載されている変更点のうち、特に法人利用へ影響がありそうな項目を抜粋して紹介します。 Thunderbird 102の変更の影響度を測りかねてまだ更新を適用できずにいる環境の運用担当者の方に、参考にして頂ければと思います。
FirefoxでUI上からHTTPログを採取する方法
はじめに
Firefoxには、UI上からHTTPログを記録する仕組みがあります。 今回はESR78以降で正式に導入された、比較的新しめのHTTPログを採取する方法を紹介します。 Firefoxでウェブサイトへのアクセスに問題が発生したときの解析に役立つはずです。
Firefox ESR102以降で古いバージョンのTLSと3DESを有効にしてサイトにアクセスする方法
はじめに
クリアコードでは、Firefoxサポートサービスの一環として、お客さまからの要望に基づいてカスタマイズしたFirefoxの提供もしています。 要望のなかには、古いバージョンのTLS(1.0/1.1)での3DESの使用というものがあります。 古いバージョンのTLSの使用は情報セキュリティの観点からは非推奨なのは言うまでもありませんが、この要望で想定されているのは、システムの移行が済んでおらず塩漬けとなっている業務システムにアクセスする必要があるような場合です。
今回は、そのような事例に対応するために、Firefox ESR102ではどのようなカスタマイズが必要なのかについて説明します。
OpenSSL脆弱性のtd-agentへの影響について(CVE-2022-3602・CVE-2022-3786)
2022年11月1日深夜にOpenSSLの深刻な脆弱性に関するアドバイザリが公表されました。 2014年のHeartbleedに匹敵する可能性があるとして大きなニュースになっています1
- OpenSSL Security Advisory [01 November 2022]
- CVE-2022-3786 and CVE-2022-3602: X.509 Email Address Buffer Overflows
Fluentdの配布パッケージであるtd-agentでは、OpenSSLライブラリを同梱して配布しています。 このため、td-agentが今回の脆弱性の影響を受けているか、アップデートが必要か、について 懸念を覚えている運用担当者の方も少なくないと思います。
世間的な関心が高く、またtd-agentには日本語圏のユーザーも非常に多いことを踏まえ、 以下、td-agentへの影響の要点について日本語のFAQ形式でお伝えいたします。
-
当初はCRITICALなバグとして事前のアナウンスがありましたが、その後の様々なプロジェクトの検証結果を踏まえ、 最終的にSeverity=HIGHの脆弱性として公表されました。 ↩
Firefoxのメタインストーラーをカスタマイズ・更新する方法
はじめに
クリアコードでは、Firefoxサポートサービスの一環として、お客さまからの要望に基づいてカスタマイズしたFirefox(メタインストーラー)の提供もしています。 その際、Firefoxをお客様自身でもカスタマイズもしくは更新できるように、メタインストーラーの生成ツールもあわせて提供しています。
Firefox ESRのマイナーバージョンアップの際には、更新方法に関するお問い合わせをいただくこともあるので、 今回はメタインストーラーの作成キットを用いたカスタマイズ・更新する方法を説明します。
YoctoのWestonをターゲットとしたFcitx5ベースの仮想キーボードの開発
近年、組み込みLinux(Yocto)でのウインドウシステムとしてWayland/Westonが採用される事例が増えていますが、同環境上で使用できるインプットメソッドや、それと連携して動作する仮想キーボードは無いか?というお問い合わせを頂くことが増えました。
これを受けて、クリアコードではサイバートラスト様と共同でFcitx5をベースとした仮想キーボードを開発しましたので、ご紹介致します。
FlexConfirmMail(Thunderbird版)の推奨設定
結城です。
当社のメール誤送信対策製品「FlexConfirmMail」のThunderbirdアドオン版は、契約顧客からのご要望に応えるための改修を重ねてきた経緯もあって、多数の設定項目があります。 そのため、尻込みして使うことをためらったり、有効な設定の仕方が分からずあまり妥当でない設定の仕方をしてしまったりするケースがあるようです。
当社では自社内においても、ThunderbirdとFlexConfirmMailの組み合わせでの使用を推奨しています。 この記事では、これらの導入手順と当社の自社内向けの推奨設定1について解説します。
※2024年9月時点の設定項目に合わせて更新しました。
-
Thunderbird 128およびFlexConfirmMail バージョン4.2.3時点での物(2024/09更新)。 ↩
Firefox ESR 102に更新して特定のWebサイトが証明書のエラーで接続できなくなった場合への対処方法
はじめに
Firefox ESR 102 1 がリリースされてしばらく経過し、組織内のブラウザをESR 91からESR 102へと移行済みのところも増えてきました。 そのなかで、特定のWebサイトに関して、ESR 91まではアクセスできていたのにESR 102ではアクセスできなくなったというお問い合わせをいただくことがあります。
今回は、Firefox ESR 102にアップグレードすることで特定のWebサイトに接続できなくなるケースへの対応について解説します。
-
ESRはExtended Support Releaseの略で、延長サポート版のFirefoxのこと。記事執筆時点の最新版はESR 102.5.0。 ↩
2022年のApache ArrowのPMC chairの成果
2022年のApache ArrowのPMC chairだった須藤です。役割を終え、PMC chairが変わったので私のPMC chairの成果をまとめます。
私がApache ArrowのPMC chairになった経緯やPMC chairってなに?そもそもPMCってなに?などは代表取締役の須藤がApache ArrowのPMC chairに就任を参照してください。