タグ

ブックマーク / qiita.com (143)

  • PromQL事始め - Qiita

    はじめに この記事は Prometheus の QUERING PROMETHEUS に書かれた内容を日語訳したものと、Prometheus 入門の内容と、実際に試した内容に基づいて補足したものです。 より実践的な例は Kubernetes(GKE) で便利な Prometheus 小ネタ集 に紹介されています。 PromQL とは PromQL(Prometheus Query Language) は Prometheus の時系列データを取得・集約するクエリ言語です。 クエリの結果は Prometheus の式ブラウザで表形式で表示したり、グラフ表示したりできます。 Grafana のようなグラフ描画ツールにてグラフ表示する時にも、Prometheus に対して問い合わせる際に使われるクエリ言語です。 メトリック Prometheus が参照する時系列データはメトリックと呼びます。

    PromQL事始め - Qiita
    NetPenguin
    NetPenguin 2024/03/25
    基本を把握するのに良い。わかりやすい。
  • Spring Boot x Micrometer x Zipkinでトレーシング - Qiita

    やりたい事 Spring Boot、Micrometer、RestTemplate を使用する 複数アプリケーション間でトレースIDを伝播する トレース情報をZipkinに送信する 参考にした記事 https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#actuator.metrics.micrometer-observation https://kazuhira-r.hatenablog.com/entry/2023/11/03/234914 構成 api-service から customer-service にリクエストを投げる単純なシステムになります。 Spring Boot アプリケーションの作成 api-service の実装 構成図の api-service に該当するアプリケーションを作成し

    Spring Boot x Micrometer x Zipkinでトレーシング - Qiita
    NetPenguin
    NetPenguin 2024/03/18
    spring boot 3.2 でmicrometer + zipkin の例
  • Spring Boot 3でオブザーバビリティが強化されたそうなのでこの期にまとめて触ってみる - Qiita

    はじめに OpenStandiaアドベントカレンダーも早いもので、最終日となりました。あっという間に投稿日がやってきました。 クリスマスとは何ら関係ないのですが、Spring Boot 3が最近リリースされました。お仕事では、今後の移行に向けたことを考えたりするわけですが、Spring Boot 3では、オブザーバビリティが強化されたそうで、今回はえっちらおっちら触っていきます。 オブザーバビリティとは オブザーバビリティとは何ぞや?という話ですが、Google先生に聞いてみると、現時点でNRIのページが一番上にヒットします。私は全く関係ないのですが、なんだかちょっと嬉しいですね。そのページ曰く以下の通りです。 オブザーバビリティとは、「可観測性」とも訳される通り、システム内部の状態をどれだけよく理解できるかを測定するものであり、モニタリングを支援します。 複雑なマイクロサービスアーキテク

    Spring Boot 3でオブザーバビリティが強化されたそうなのでこの期にまとめて触ってみる - Qiita
    NetPenguin
    NetPenguin 2024/03/18
    spring boot3でopen telemetry + grafana tempoを使用している例
  • 「0.1+0.2≠0.3」を説明できないエンジニアがいるらしい - Qiita

    この記事はNuco Advent Calendar 2023の4日目の記事です。 弊社では、経験の有無を問わず、社員やインターン生の採用を行っています。 興味のある方はこちらをご覧ください。 はじめに 後輩に 「なぜ0.1+0.2≠0.3になるんですか?」 と聞かれて答えられますか? コンピュータの計算では「0.1+0.2」は「0.3」になりません。 これを理解していないと予期せぬ重大なバグを生み出す可能性があります。 分からない方、どうぞ安心してください。 この記事を読んだ全員が「0.1+0.2≠0.3」を理解できるように分かりやすく説明していきます。 コンピュータが計算を間違う理由 まず、そもそも「0.1+0.2=0.3」で正しい!「0.1+0.2≠0.3」なんてあり得ない! という方のために、プログラミング言語のフォーマット処理を経ない、コンピュータの計算結果を見てみます。

    「0.1+0.2≠0.3」を説明できないエンジニアがいるらしい - Qiita
    NetPenguin
    NetPenguin 2023/12/05
    「びっ……びっぐでしまる……」 そう言い残すとエンジニアは塵となって消えた。
  • EC2が複数VPCにENIを足出しできるように!でもみんな戦々恐々としてるのはなぜ…? - Qiita

    AWSVPCに大きなアップデートが! 今週10/26、AWSにこんな機能アップデートが発表され大変話題になりました。 簡単に言うと 「EC2インスタンスから複数のVPCに対してENI(NIC)を足出しできるようになった」 という大きなアップデートでした。 みんな戦々恐々? しかし、Twitterのオンプレミス経験者たちは口を揃えて懸念を漏らしています。 「これ、クラウド初心者がオンプレからの移行で "監視セグメントVPC" みたいなものを作ってしまうんじゃなかろうか…」 今回のアプデを見て「ウッ…😅」と感じた方も、改めて何が問題なの?と聞かれると意外としっかり言語化できないかも知れません。これを機にAWSの代表的なサービスであるマネージド論理ネットワーク「VPC」の基をおさらいしてみましょう。 オンプレ時代の基を振り返る パブリッククラウド普及前のオンプレミス時代では、企業のシステ

    EC2が複数VPCにENIを足出しできるように!でもみんな戦々恐々としてるのはなぜ…? - Qiita
    NetPenguin
    NetPenguin 2023/10/30
    自分がAWS素人すぎて、気をつけないとやってしまいそうだ……
  • 【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita

    はじめに もう文字列の置換で sed コマンド使うの禁止して良いんじゃないですかね? 言いすぎだとわかってあえて言っていますが。 悪い書き方(外部コマンドに頼る方法) # 変数 line に入ってる文字列を echo コマンドで出力して sed コマンドに渡し、 # sed の s コマンドで "from" を "to" に置換して出力したものを ret 変数で受け取る ret=$(echo "$line" | sed "s/from/to/")

    【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita
    NetPenguin
    NetPenguin 2023/09/02
    タイトルだけ見て「わかります。そこでPerlですよね」とか思ったけど、記事読んだらちゃんとした内容だった。
  • 文化祭で某チェーン店を再現して失敗した話 - Qiita

    要約 Wifiは無いに等しいと考えること。 (来場者1万強/日 なんていう状況下でWifiが動くと想定するのが駄目でした) 進捗管理する第三者を設けること。 ソースコード https://github.com/Na4Yu/EasyEats (RTDBのURLやSquareの個別キーは抜いているのでそのままは使えないです) はじめまして はじめまして、高校2年のNaYuです。 今回は文化祭で派手に失敗した話をさせて頂きます。 血反吐を垂れ流しながら書いていましたが、もし皆さんが文化祭を経て「この人のしたことをしなくて良かった~」なんて言っていただければ幸いです。(人の不幸は蜜の味) お願い 記事は知見の共有を目的として個人が執筆したものであり、記事の内容について学校、学校関係者への問い合わせはご遠慮頂けるようお願い申し上げます。 これを読んでいる後輩の方々へ この記事が私からの引き継ぎに

    文化祭で某チェーン店を再現して失敗した話 - Qiita
    NetPenguin
    NetPenguin 2023/08/12
    分析して、計画して、実行するのすごい。
  • 悪名高きスワイプ広告を解析する - Qiita

    この記事の概要 ユーザーから嫌われている広告の1つに「スワイプ広告」というものがある。 誤タップをしやすいことが理由だが、あまりにもこの広告だけ誤タップするため調べたところ 実は誤タップしたように見せかけて意図的に広告先に遷移させる広告であるということがわかった。 スワイプ広告とは、左右にスワイプすると画像がついてくるタイプの広告である。 スワイプ広告とは スワイプ広告とは、主にアフィリエイトサイトで見られる広告形式の一つである。 ユーザーは指で画面上の広告を左右にスワイプすることで、広告画像を切り替えることができる。 スワイプによるインタラクティブ性を活かし、複数のメッセージやメディアを使い、魅力的な広告体験を提供することが特徴である。 なぜ悪名高いのか しかし、スワイプ広告はユーザーから嫌われている。その理由は、誤タップを誘発しやすいからである。 誤って広告をタップして画面が遷移してし

    悪名高きスワイプ広告を解析する - Qiita
    NetPenguin
    NetPenguin 2023/08/07
    Amazonの広告がコレで頻繁に遷移させられて苛つく。ちな、誤タップしたとはもとより思っていない。
  • MVCモデルは意識した方がいい!!!私は地獄を見ました!!! - Qiita

    目次 MVCモデルとは何者?? Modelとは Viewとは Controllerとは まとめ (MVCを意識せずに書いた私の経験談) MVCモデルとは何者?? MVC(Model-View-Controller)モデルは、ソフトウェア開発におけるデザインパターンの一つ。MVCはアプリケーションの内部の構造を整理し、役割を分離することで、保守性や拡張性を向上させることを目的としているもの。 Modelとは モデルはデータの管理や処理、データベースとのやり取りなどを行うもの。 バリテーションも行う。 Viewとは ビューはユーザに表示されるもの。 例えばHTMLやJSなど Controllerとは ユーザーの入力やアクションを受け取り、それに応じた処理(モデルのデータを取得・更新)をし、最終的な結果をビューに渡すもの。 言えばMVCモデルの頭。 まとめ(経験談) 初めは全く気にしないで書いて

    MVCモデルは意識した方がいい!!!私は地獄を見ました!!! - Qiita
    NetPenguin
    NetPenguin 2023/06/20
    MVCは定期的に勘違いして理解してまった記事があがってくるな
  • フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita

    ゴールデンウィークのはじめ(4月29日)に投稿された以下のツイートですが、5月7日20時において、1,938.8万件の表示ということで、非常に注目されていることが分かります。 我が名はアシタカ!スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた。どうすればよい! pic.twitter.com/e26L1Bj32Z — スタバでMacを開くエンジニア (@MacopeninSUTABA) April 29, 2023 これに対して、私は以下のようにツイートしましたが、 これ入社試験の問題にしようかな。『スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた』と言う事象に至る現実的にありえる脅威を説明せよ。結構難しいと思いますよ。 https://t.co/LH21zphCTV — 徳丸 浩 (@ockeghem) April

    フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita
    NetPenguin
    NetPenguin 2023/05/08
    HTTPSってやはり偉大だなと再認識した。
  • ソフトウェアテストの実行を効率化するPredictive Test Selectionの衝撃 - Qiita

    12月10日の2022ソフトウェアテストアドベントカレンダーです。 Launchable社でエンジニアとして働いているcvuskと申します。機械学習界隈では機械学習を実用化するためのシステム開発のを書いてたります。もし良かったら読んでみてください。 『機械学習システムデザインパターン』 『機械学習システム構築実践ガイド』 ブログでは機械学習を用いてテスト実行を効率化する手法として、Predictive Test Selectionについて説明します。テスト実行時間やコストで課題を抱えているエンジニアに役に立つと幸いです。 昨今の開発におけるテスト事情 2002年に『テスト駆動開発』が世に出て、ソフトウェア開発でテストを書くことが常識になって早20年が経っています。その間にクラウドの登場やDevOpsの普及により、テストをCI/CDパイプラインで自動実行し、コードとプロダクト品質を維持す

    ソフトウェアテストの実行を効率化するPredictive Test Selectionの衝撃 - Qiita
    NetPenguin
    NetPenguin 2022/12/11
    試してみたい。 Jenkins+Gradle(Kotlin)の場合、CLIでファイルの変更セットを送って、CLIでテスト結果をおくれば良さそう?
  • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

    はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シェルスクリプト特有の問題、シグナルやトラップ、サブシェルや子プロセスの問題、さらには特定のシェル固有の仕様やバグなどさまざまな問題に対処する必要があり大変です。独自実装の例では古いロックファイルが残ってしまい、それをいつどのタイミングで片付ければ安全なのか?

    シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
    NetPenguin
    NetPenguin 2022/09/28
    いままで独自実装していた。flock、おぼえた。
  • スクラムに「うーん、、、」て感じた時なんか役にたつ"かもしれない"3行アドバイス - Qiita

    この投稿は ミライトデザイン Advent Calendar 2021 の 25日目最終日の投稿です。 稿の内容 スクラム開発を取り入れてみたけどいまいち機能してない。いまいちメリットを感じない。 失敗はしていないけど成功もしていない。みたいな経験がありませんか? 稿ではそんなときに改めてさっと見返して役に立つことを目的とした「3行くらいのアドバイス」を書きたいと思います。(あくまで"くらい"なのでたまに超えるかも) また、個人的意見も多分に入ってますのでそこはご了承ください。 前提 まずはスクラムチームの意識を合わせましょう。 スクラム開発ではスプリントごとに「プロダクトに対してインクリメントを積み重ねていく」事を目的とします。 この大前提を見失ってはスクラム開発のどんなプロセスを踏んでも価値を得る事は難しいでしょう。 インクリメントとは、プロダクトに出荷可能な形の価値を積み重ねる事

    スクラムに「うーん、、、」て感じた時なんか役にたつ"かもしれない"3行アドバイス - Qiita
    NetPenguin
    NetPenguin 2021/12/27
    velocityとestimate、たしかにそうだなと納得しつつも、estimateを見積もるの難しそうだな。
  • シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の当の理由を知ると優れた文法が見えてくるShellScriptBashUNIXshellPOSIX はじめに シェルスクリプトの変数代入で = の前後にスペースを置くことができない理由は、検索すれば「プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話」のような記事がすぐに見つかります。記事に書いてあるとおり変数代入とコマンド呼び出しと区別がつかないからです。それは間違いではないんですが、私はもう少し説明が足りないと感じています。そこで今回は = の前後にスペースを置けない当の理由を解説したいと思います。 の前に皆さんにはこの話を読みながら、自分がシェルスクリプトの言語設計者だったとしたら、どういう言語仕様にするかを考えて欲しいです。なぜかと言うとシェルスクリプトの文

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita
    NetPenguin
    NetPenguin 2021/11/10
    おぉ……なるほど……🤔
  • API設計スキルを次のレベルに引き上げるベストプラクティス22選 - Qiita

    記事は、Mohammad Faisal氏による「22 Best Practices to Take Your API Design Skills to the Next Level」(2021年4月15日公開)の和訳を、著者の許可を得て掲載しているものです。 REST API設計のための実践的アドバイス Photo by Andrea Piacquadio from Pexels はじめに すべてが分かりにくく、ひどいAPIに不満を感じたことはありませんか?私はそうです。 マイクロサービスの世界では、バックエンドAPIの一貫した設計が不可欠です。 今日は、知っておくべきベストプラクティスについて、簡潔に説明します。さあ始めましょう! 用語 API設計は、リソース指向設計というものに従います。3つの重要な概念で構成されています。 リソース:データの一部(例:ユーザー) コレクション:リソー

    API設計スキルを次のレベルに引き上げるベストプラクティス22選 - Qiita
    NetPenguin
    NetPenguin 2021/11/10
    この記事に直接は関係無いけど、集合を表す時に末尾スラッシュではなく複数形を使えっていうの、時々目にする。だけど、末尾のスラッシュを特別扱いする事と、末尾のsを特別扱いする事に差は無いのでは?と思う。
  • なぜ、ソフトウェアプロジェクトは人数を増やしても上手くいかないのか - Qiita

    はじめに ソフトウェアプロジェクトには不思議な性質があります。現状のスケジュールに課題を感じて、短くするために人員を投下しても、なかなか思い通りに短くならない。それどころか悪化してしまうことがあります。場合によってはプロジェクト自体が破綻して失敗してしまうことすらあります。 今回は、このようなソフトウェアプロジェクトに潜む直感に反する性質を数理的なモデルを介して理解していく試みです。ある種の思考実験としてお楽しみください。 宣伝 Qiitaさんとコラボ企画でアドベントカレンダーをつくりました。 DXをめちゃくちゃ改善した話を募集しています。 https://qiita.com/advent-calendar/2021/dx-improvement 10人の妊婦がいても1ヶ月で一人の子供は生まれない これは誰かの技術力やプロジェクトマネジメント力に欠陥があるのではなく、「人月の神話」で有名な

    なぜ、ソフトウェアプロジェクトは人数を増やしても上手くいかないのか - Qiita
    NetPenguin
    NetPenguin 2021/11/01
    人月の神話(+αと対策?)
  • 桁の落ちない話 - Qiita

    今回取り上げるのは,計算機上で小数を扱う際に重要な問題となってくる『桁落ち』という現象である。記事の内容はほとんど実装言語に依存しないことを断っておく。(実際の計算例ではC言語を用いている。) 結論から言えば,『桁落ち』とは「近接した値同士で引き算をすると結果の不確かさが極端に大きくなる」ということだ。かなり微妙な言い回しだが,ともかく「引き算には気をつけろ」といった意味だと今は思っておいていただきたい。 以下の文で言うところの『足し算』および『引き算』とは「正の数同士」とで行われるものだけを指すものとする。「正の数と負の数の足し算」およびその逆は引き算と見なす。 小数と誤差 計算機上では普通は2進小数が使われるのだが,『桁落ち』は特に基数に依存する概念ではないので,我々にとって馴染み深い10進小数1で説明する。 有効数字と誤差 現代において我々は整数でない数を小数で表し,特に無限小数

    桁の落ちない話 - Qiita
    NetPenguin
    NetPenguin 2021/09/08
    桁落ち,小数, 桁落ちは引き算でのみ発生する
  • 「次から気をつけます」に対抗する、反省文よりは効果が上がる再発防止、学びの機会 - Qiita

    再発防止策を書くのは難しい。 良い再発防止策 良い再発防止策について、順位付けするとしたら、 その種類の問題について二度と意識することがなくなる解決策 その種類の問題を開発時に自動的に検知することができる解決策 その種類の問題が発生しても自動的に復旧することができる解決策 その種類の問題が発生しても影響が局所化される、フールプルーフ、フェールセーフになる解決策 と言うのは意識したいと思いつつ、やはり難しい。 再発防止はむずかしい 障害の再発防止策は、 メカニズム ツール ルール チェックリスト の順番に検討せよ。と言われても、急いで書けなんて言われると「次回からは複数人でチェックします。」とか「チェック項目を追加します。」とかいう徹底できなそうな「反省文」になってしまう。 まさにこの有名な...。 **「なぜミスを繰り返すのか」「どうすればミスを防げるのか」を真剣に考えていないことがミス

    「次から気をつけます」に対抗する、反省文よりは効果が上がる再発防止、学びの機会 - Qiita
  • 単一責任の原則とは何だったのか - Qiita

    はてブで単一責任の原則(Single responsibility principle)について、もう一度考えるといふ記事を見掛けて、なんとなく懐かしい気持ちになった。久し振りにこの言葉を見たなって。 「一つのモノに一つの責任 (役割) を」といふモットーは、初めて聞いた時にはすごくもっともらしく聞こえるんだけど、いろいろ考へてくと結局「責任が一つであるとはどういふことなのか?」「といふか、責任って一つとか二つとか数へられるものなのか?」といふ疑念を抱くよね。俺も昔さう思ひました。 で、この菅野さんの記事では「責任が一つであるとは、一人の利用者 (アクター) に対してだけ責務を果たすこと」といふ話をしてゐる。その理解はたぶんそんなに間違ってはゐないと思ふ。ブコメに「作者の人そこまで考えてないと思うよ」とかいふコメントもあったけれども、菅野さんの記事が信用できないと思ふんならボブ人による記

    単一責任の原則とは何だったのか - Qiita
    NetPenguin
    NetPenguin 2021/06/07
    なんで、こんな読みづらい書き方なの??
  • Apache Kafkaの性能検証(1): 検証環境とパラメータチューニングの内容 - Qiita

    初版: 2018/10/19 著者: 伊藤 雅博, 株式会社日立製作所 はじめに この投稿ではオープンソースカンファレンス2017.Enterpriseで発表した「めざせ!Kafkaマスター ~Apache Kafkaで最高の性能を出すには~」の検証時に調査した内容を紹介します(全8回の予定)。投稿の内容は2017年6月にリリースされたKafka 0.11.0 時点のものです。 第4回目となる今回からは、実際にKafkaの性能検証を行った際の測定結果を紹介していきます。今回はまず、検証環境のシステム構成と検証方法について紹介します。 投稿一覧: 1. Apache Kafkaの概要とアーキテクチャ 2. Apache KafkaのProducer/Broker/Consumerのしくみと設定一覧 3. Apache Kafkaの推奨構成と性能の見積もり方法 4. Apache Kafka

    Apache Kafkaの性能検証(1): 検証環境とパラメータチューニングの内容 - Qiita