> ## Documentation Index
> Fetch the complete documentation index at: https://docs.logbrew.co/llms.txt
> Use this file to discover all available pages before exploring further.

# LogBrew proje kurulumu ve sinyal kontrolleri

> Bir LogBrew projesi kurun. Hizmet ve ortam adlarını seçin, kurulum durumunu okuyun ve uygulamanızın test olaylarını bulun.

Proje, telemetrinin erişim sınırıdır. Kabul edilen her sinyal tek bir
projeye aittir ve her okuma komutu projeye göre filtreleyebilir.

Telemetri ayrı bir sahiplik veya erişim sınırı gerektiriyorsa ayrı bir proje
kullanın. Çoğu ekip için bu, bir uygulama, hizmet veya ürün alanıdır. Bir
deponun tek bir projeye karşılık gelmesi gerekmez. Bir monorepo birden fazla
hizmeti tek bir projeye gönderebilir. Bunları hizmet adlarıyla ayırın.

## <span id="project-service-environment">Proje, hizmet, ortam</span>

| Terim | Örnek | Ne için kullanılır |
| - | - | - |
| Proje | `checkout-platform` | Sahiplik ve erişim. |
| Hizmet | `checkout-api` | Sinyali gönderen uygulama veya hizmet. |
| Ortam | `production` | Çalışma bağlamı. |
| Sürüm | `api@1.2.3` | Kod sürümü. |

## <span id="recommended-model">Bir proje kurun</span>

[CLI'ı kurun](/tr/guides/cli). Hesap erişiminizi okumak için
`logbrew status --json` komutunu çalıştırın. Erişim geçerli değilse bir kişi
`logbrew login` komutunu çalıştırır. Proje alım anahtarı (ingest key) ile
giriş yapılamaz.

<Steps>
  <Step title="Bir proje oluşturun veya seçin">
    Önce projelerinizi listeleyin. Yalnızca proje yoksa yeni bir proje
    oluşturun.

    ```bash theme={null}
    logbrew projects --json
    install -d -m 700 "$HOME/.logbrew"

    logbrew projects create checkout-api \
      --runtime node \
      --environment production \
      --ingest-key-file "$HOME/.logbrew/checkout-api.ingest" \
      --json
    ```

    CLI, alım anahtarını yalnızca sahibinin okuyabildiği yeni bir dosyaya
    yazar. Anahtarı veya dosya yolunu hiçbir zaman yazdırmaz. Sonuç net
    değilse aynı komutu yeniden çalıştırın. Proje adını veya anahtar
    dosyasını değiştirmeyin. CLI bekleyen isteğinin kimliğini yeniden
    kullanır. [Hızlı başlangıç](/tr/quickstart), proje kimliğini sonuçtan nasıl
    okuyacağınızı gösterir.

    Mevcut bir proje için kurulum durumunu kaydedin:

    ```bash theme={null}
    logbrew projects setup "<project_id>" --source cli --environment production --json
    ```

    Mevcut bir projeye başka bir alım anahtarı oluşturmak için
    `logbrew projects keys create` komutunu kullanın.
    [Alım anahtarını yenileyin](/tr/guides/rotate-ingest-key) rehberi komutu
    gösterir.

    `logbrew setup --create-project` yalnızca yardımı gösterir. Proje
    oluşturmaz.
  </Step>

  <Step title="SDK'da hizmet adlarını ayarlayın">
    Deponuzdan ve dağıtımınızdan gelen adları kullanın: `api`, `worker`,
    `web`, `ios` veya `checkout-api` gibi. Hizmet adı bir etikettir, proje
    seçici değildir. Projeyi alım anahtarı seçer. Bir hizmetin adını
    değiştirmek saklanan olayları taşımaz. Bir olayı bulamazsanız başka bir
    proje oluşturmadan önce uygulamanın kullandığı projeyi ve alım
    anahtarını kontrol edin.
  </Step>

  <Step title="Standart ortamlar kullanın">
    `production`, `staging`, `preview` ve `local` kullanın. Dağıtımınız
    başka adlar kullanıyorsa onları tutarlı biçimde kullanın. Ortam adı
    boşluk, `/` veya ters eğik çizgi içeremez.
  </Step>

  <Step title="Bir test olayı gönderin ve okuyun">
    SDK'yı, [SDK entegrasyonu](/tr/guides/sdk-ingestion) rehberinde
    anlatıldığı gibi proje alım anahtarıyla yapılandırın. Proje oluşturmak,
    uygulamanıza SDK kurmaz. Anahtarı kaynak kod deposunun dışında tutun.
    Hizmeti, ortamı ve sürümü uygulamada ayarlayın. Güvenli bir olay
    gönderin, ardından okuyun:

    ```bash theme={null}
    logbrew read logs --project "<project_id>" --json
    ```

    Her sinyalin kendi listesi vardır. Log listesinin boş olması, projede
    sorun veya iz olmadığı anlamına gelmez.

    Panelde aynı projeyi ve test olayını kapsayan bir zaman aralığı seçin.
    Hizmet, ortam ve sürüm filtrelerinin olayla eşleştiğinden emin olun.
  </Step>
</Steps>

## <span id="diagnose-project-setup">Proje kurulumunu teşhis edin</span>

Kurulum durumunu proje doctor komutuyla okuyun. Kurulum durumunu yerel
dosyalardan veya boş bir log sorgusundan çıkarmayın.

```bash theme={null}
: "${LOGBREW_PROJECT_ID:?set a project UUID}"

logbrew doctor --project "$LOGBREW_PROJECT_ID" --json
```

CLI; `status`, `checks` ve `next` içeren bir rapor döndürür. `0` çıkış kodu,
tüm kontrollerin başarılı olduğunu göstermez. `checks` içindeki her öğeyi
okuyun. Bkz.
[Proje doctor raporunu okuyun](/tr/reference/cli#read-a-project-doctor-report).

### Doğrudan API yanıtı

API istemcileri `GET /api/projects/{project_id}/doctor` uç noktasını hesap
kimlik doğrulamasıyla çağırır. Uç noktanın sorgu parametresi veya istek
gövdesi yoktur. Bu okuma için hiçbir zaman proje alım anahtarı kullanmayın.

`200` yanıtı şu anahtarları içerir: `project_id`, `state`, `setup_status`,
`setup_acknowledged`, `has_active_ingest_key`, `first_telemetry_seen_at`,
`last_seen_at`, `last_signal`, `next` ve `next_action`. Zaman damgaları
RFC3339 biçimindedir veya `null` olur. `last_signal` ham bir sinyal değil,
gösterilmesi güvenli bir özettir.

| `state` | `next_action.code` | `next_action.target` |
| - | - | - |
| `needs_ingest_key` | `create_ingest_key` | `project_ingest_keys` |
| `needs_setup` | `choose_setup_path` | `project_setup` |
| `needs_telemetry` | `send_first_telemetry` | `telemetry_ingest` |
| `ready` | `inspect_recent_telemetry` | `telemetry_reads` |

Doctor önce alım anahtarını kontrol eder. Etkin alım anahtarı olmayan bir
proje, kurulum durumu ne olursa olsun `needs_ingest_key` olur.

`setup_status` değeri `created`, `setup_started`, `sdk_seen`,
`first_telemetry_seen` veya `active` olur. `setup_acknowledged` yalnızca son
üç değerde `true` olur. `created`, `needs_setup` sonucunu verir.
`setup_started` ve `sdk_seen`, `needs_telemetry` sonucunu verir.
`first_telemetry_seen` ve `active`, `ready` sonucunu verir.

| Yanıt | Sonraki adım |
| - | - |
| `404`, `code: "not_found"` | Var olmayan bir proje, arşivlenmiş bir proje ve hesabınızın okuyamadığı bir proje aynı sonucu verir. Proje kimliğini `logbrew projects` çıktısından yeniden okuyun. Başka kimlikler denemeyin. |
| `405`, `code: "method_not_allowed"` | Gövde ve sorgu parametresi olmadan `GET` kullanın. |

Okuma yine başarısız olursa [sorun bildirin](/tr/guides/report-a-problem).
Kimlik bilgilerini, başlıkları, sinyal gövdelerini, müşteri verilerini, yerel
yolları veya kaynak kodu eklemeyin.

## <span id="archive-or-delete-a-project">Bir projeyi arşivleyin veya silin</span>

Bir projeyi etkin proje listesinden kaldırmak için arşivleyin:

```bash theme={null}
logbrew projects archive "<project_id>" --yes --json
```

Komut `--yes` gerektirir. Arşivlemeden sonra projenin alım anahtarları yeni
telemetri kabul etmez. API rotası `DELETE /api/projects/{project_id}`
şeklindedir. Gövdesiz bir `204` döndürür. Arşivlenmiş projeleri
`GET /api/projects/archived` ile listeleyin. Bir projeyi
`POST /api/projects/{project_id}/restore` ile geri yükleyin. Bu istek de
`204` döndürür.

Bir projeyi yalnızca emin olduğunuzda kalıcı olarak silin:

```bash theme={null}
logbrew projects delete "<project_id>" --confirm "<project_id>" --json
```

`--confirm` seçeneğinden sonra aynı proje kimliğini tekrar yazın. Kabul edilen
bir istek projeyi hemen etkisiz hâle getirir ve kalıcı silmeyi zamanlar. Bundan
sonra projeyi geri yükleyemezsiniz.

## <span id="rotate-an-ingest-key-without-telemetry-loss">Alım anahtarını yenileyin</span>

[Alım anahtarını yenileyin](/tr/guides/rotate-ingest-key) rehberi, yeni anahtarı
oluşturma, dağıtma, test etme ve eski anahtarı iptal etme adımlarını verir.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.