「Go」を生かしたネットワーク運用管理【中編】
プログラミング言語「Go」は熱心な開発者ほど学習しにくい? その理由とは
エンジニアがプログラミング言語「Go」を学ぶ上での難しさとは何か。Goを用いたログ取得、分析の課題とは。専門家に聞いた。
前編「プログラミング言語『Go』の魅力とは? 『Goで“脱COBOL”』の成功者が語る」は、Barracuda Networksでシニアソフトウェアエンジニアを務めるアダム・ウッドベック氏が考える、プログラミング言語「Go」のメリットを説明した。中編はGoを習得する上でのハードルと、ログ収集の課題および解決策をウッドベック氏に聞く。
「Go」の習得を難しくする“あのハードル”
併せて読みたいお薦め記事
さまざまなプログラミング言語
- いまさら聞けない「コンパイル言語」の基礎 メリットとデメリットは?
- “Visual COBOL”に期待か? “死んだ言語”「COBOL」復活の条件
- Java使いでも「R」「Python」を学びたくなる“納得の理由”
Goについて知る
―― Goを学ぶ上で一番難しいことは何ですか。
ウッドベック氏 Goの書き方のスタイルに従わなければならないことだ。「Perl」「Python」「PHP」「Java」など、他のプログラミング言語を経験してからGoを学び始めるエンジニアは、GoでPerlやJavaなどの書き方に従おうとする。Goのスタイルに少し逆らい、なじみのあるプログラミング言語のスタイルを踏襲しようとするわけだ。
こつをつかんで頭を切り替えられれば、Goのパワーを活用できるようになる。私もそうした切り替えを経験した。同じ経験を持った、数え切れないほど多くの人と話したこともある。これは通過儀礼のようなものだろう。
「ログの洪水」に悩まされないためには
―― Goを使ってどのようにロギング(ログの記録と分析)やメトリクス(指標)管理をしていますか。
ウッドベック氏 システム開発を始めたころは、必要だと思ったことを全て記録していた。だが、すぐにそれは良いやり方ではないと分かった。必要な針が埋もれているが、見つけられそうもない干し草の山を作っていたようなものだからだ。
私のアプローチはそこから進化した。今も多くのログを蓄積しているが、必要なもののみを収集するようにしている。例えばデバッグのログのように、問題にぶつかった場合に必要になることが分かっているデータをログに記録するといった具合だ。システムの本番運用でログに煩わされるのは、対処すべき事項がある場合だけにした方がよい。
注意を払うべきログであっても、過剰に生まれる場合がある。Goが標準で備えるロガー(ログを取得するプログラム)の一部は、サンプリングの考え方を取り入れている。プログラムで「このイベントが5回発生するごとに通知を送信する」といった定義が可能なので、大量のクライアントが一度に生成するログの“洪水”に見舞われずに済む。
メトリクスについては、全て網羅的に測定している。「Prometheus」といった監視ツールをGoプログラムのメトリクス測定に使用する場合、他の書き込み処理を妨害せずに数値を計測する「アトミックカウンタ」を用いることで、メトリクス測定処理の負荷を軽くできる。バックグラウンドでメトリクスを測定し、Prometheusがメトリクスを監視する。メトリクスに加え、現在何が起こっているのかを可視化するダッシュボードもアプリケーションの状態の把握に役立っている。
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社うるる] 「入札市場」攻略ガイド:効率的に落札するためのポイントを徹底解説 -
製品資料
[株式会社うるる] 入札情報に特化した「販路拡大」「効率化」のためのサポートツールとは? -
市場調査・トレンド
[株式会社うるる] 公共入札に成功する企業と失敗する企業の「5つの違い」 -
製品資料
[日本ビジネスシステムズ株式会社] 専門家が教える、Microsoft 365の「テナント統合/分離」を成功に導く秘訣 -
製品資料
[rakumo株式会社] Microsoft 365での情報埋没を防ぐ、社内ナレッジを資産化する情報ポータル活用
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
2
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
3
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
4
Claude利用8割のGMO、AI人材の評価軸が「トークン管理」に変わった
-
5
AI導入が失敗する“真犯人”は現場のマニュアル 7割が陥る「標準化」のわな
-
6
被害額は過去最高額 それでも「サイバー犯罪者が捕まらない」3つの理由
-
7
「テザリング依存」に潜む落とし穴 “遅いVPN”を解消するネット構築術
-
8
「Windows」の不要なファイルを安全に消して容量を空ける方法
-
9
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
10
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
3
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
4
「IT史に名を残すシステム障害」8選
-
5
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
6
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
7
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
-
8
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
9
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
10
「標的型攻撃メール」事例・サンプル集
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー