<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>프로그래밍 - 분류 - lee's blog</title><link>https://ken-0913.github.io/myblog/categories/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D/</link><description>프로그래밍 - 분류 - lee's blog</description><generator>Hugo -- gohugo.io</generator><language>ko-kr</language><managingEditor>hyeonjae0913@gmail.com (ken-0913)</managingEditor><webMaster>hyeonjae0913@gmail.com (ken-0913)</webMaster><lastBuildDate>Mon, 27 Jul 2026 10:00:00 +0900</lastBuildDate><atom:link href="https://ken-0913.github.io/myblog/categories/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D/" rel="self" type="application/rss+xml"/><item><title>Claude Code Action에서 MCP 서버에 접속하는 방법 — HTTP(Datadog)와 stdio(GCP)</title><link>https://ken-0913.github.io/myblog/posts/mcp/mcp-datadog-gcp-github-actions-wif/</link><pubDate>Mon, 27 Jul 2026 10:00:00 +0900</pubDate><author><name>ken-0913</name></author><guid>https://ken-0913.github.io/myblog/posts/mcp/mcp-datadog-gcp-github-actions-wif/</guid><description><![CDATA[<div class="featured-image">
                <img src="images/banners/mcp-datadog-gcp-github-actions-wif-bf0c48b3.png" referrerpolicy="no-referrer">
            </div><p>GitHub 이슈에 <code>@claude</code> 코멘트를 달면 Claude Code Action이 Actions에서 돌아간다.
이때 MCP 서버를 붙이면 봇이 외부 도구(Datadog 조회, GCP 로그 조회 등)를 직접 호출할 수 있다.<br>
이 글은 Github Actions에서 MCP 서버에 접속하는 방법과 인증이 다른 두 패턴(HTTP·stdio)으로 정리한다.</p>
<h2 id="전체-구조" class="headerLink">
    <a href="#%ec%a0%84%ec%b2%b4-%ea%b5%ac%ec%a1%b0" class="header-mark"></a>전체 구조</h2><p><code>@claude</code> 코멘트 하나가 다음 흐름을 태운다.</p>
<pre class="mermaid">flowchart TD
    U(["개발자: @claude 코멘트"])

    subgraph GH["GitHub Actions"]
        J["claude-code-action Job"]
        M1["MCP: github_comment"]
        M2["MCP: datadog"]
        M3["MCP: gcpobs"]
        J --> M1
        J --> M2
        J --> M3
    end

    subgraph DD["Datadog"]
        DDEP["mcp.datadoghq.com<br/>HTTP 엔드포인트"]
        DDDATA["APM / Logs / Metrics"]
        DDEP --> DDDATA
    end

    subgraph GCP["Google Cloud"]
        STS["STS / WIF Provider"]
        SA["Service Account<br/>claude-obs-mcp"]
        API["Observability API<br/>Logging / Monitoring / Trace"]
        STS -->|impersonate| SA
        SA --> API
    end

    U --> J
    M1 -->|이슈 답글| U
    M2 -->|Bearer 토큰| DDEP
    M3 -->|OIDC JWT / ADC| STS
</pre><h2 id="mcp-서버-접속-방법" class="headerLink">
    <a href="#mcp-%ec%84%9c%eb%b2%84-%ec%a0%91%ec%86%8d-%eb%b0%a9%eb%b2%95" class="header-mark"></a>MCP 서버 접속 방법</h2><p>MCP(Model Context Protocol) 서버는 Claude에게 <strong>도구(tool)</strong> 를 제공하는 표준이다.
Claude Code Action에 붙일 때는 크게 두 형태로 나뉜다.</p>]]></description></item><item><title>Go Goroutine 입문 — 동시성을 다루는 가장 작은 단위</title><link>https://ken-0913.github.io/myblog/posts/go/go-goroutine-for-beginners/</link><pubDate>Mon, 20 Jul 2026 09:00:00 +0900</pubDate><author><name>ken-0913</name></author><guid>https://ken-0913.github.io/myblog/posts/go/go-goroutine-for-beginners/</guid><description><![CDATA[<div class="featured-image">
                <img src="images/banners/go-goroutine-for-beginners-64aa235c.png" referrerpolicy="no-referrer">
            </div><p><strong>Goroutine</strong>은 Go에서 함수를 동시에 실행하는 가장 작은 단위이다.
Go는 언어 차원에서 동시성(concurrency)을 지원하며, 그 핵심이 Goroutine이다.
이 글은 Goroutine을 처음 접하는 경우를 기준으로 개념과 기본 사용법을 정리한다.</p>
<h2 id="동시성concurrency이란" class="headerLink">
    <a href="#%eb%8f%99%ec%8b%9c%ec%84%b1concurrency%ec%9d%b4%eb%9e%80" class="header-mark"></a>동시성(Concurrency)이란</h2><p><strong>동시성</strong>은 여러 작업을 번갈아 진행해 마치 함께 처리되는 것처럼 보이게 하는 방식이다.
예를 들어 파일을 내려받으면서 동시에 로그를 출력하는 상황이 이에 해당한다.
하나의 작업이 끝날 때까지 다른 작업이 멈춰 기다리지 않아도 된다는 점이 핵심이다.</p>
<p>일반적인 함수 호출은 **순차적(sequential)**이다.
앞 함수가 끝나야 다음 함수가 실행되므로, 느린 작업이 있으면 전체가 함께 느려진다.
Goroutine은 이 순차 실행을 벗어나 함수를 <strong>동시에</strong> 돌리는 수단이다.</p>]]></description></item></channel></rss>