Megosztás:


Runtime

A futtatókörnyezet viselkedését meghatározó konfigurációs beállítások.

Lapozási beállítások

Property Default Description
runtime.pagination.max oldalméret A maximális rekordokat határozza meg oldalanként
runtime.pagination.default-page-size Alapértelmezett rekordok beállítása válaszonként

REST-beállítások

Property Default Description
runtime.rest.path "/api" REST-végpontok alapútvonala
runtime.rest.enabled true Lehetővé teszi a REST-kérelmek engedélyezését vagy letiltását az összes entitás esetében
runtime.rest.request-body-strict true Nem engedélyezi a felesleges mezőket a kérelemtörzsben, ha igaz

GraphQL-beállítások

Property Default Description
runtime.graphql.allow-introspection true Lehetővé teszi a mögöttes GraphQL-séma lekérdezését
runtime.graphql.path "/graphql" A GraphQL-végpont alap elérési útja
runtime.graphql.enabled true Lehetővé teszi a GraphQL-kérelmek engedélyezését vagy letiltását az összes entitás esetében
runtime.graphql.depth-limit null GraphQL-lekérdezés megengedett legnagyobb mélysége
runtime.graphql.multiple-mutations.create.enabled false Több-létrehozási mutációk engedélyezése az összes entitáshoz

Gazdagép beállításai

Property Default Description
runtime.host.max-response-size-mb 158 Egyetlen eredményben engedélyezett adatbázis-válasz maximális mérete (MB)
runtime.host.mode "production" Futó mód; "production" vagy "development"

CORS-beállítások

Property Default Description
runtime.host.cors.origins [] Engedélyezett CORS-források
runtime.host.cors.allow-credentials false Az Access-Control-Allow-Credentials fejléc értékének beállítása

Hitelesítési beállítások

Property Default Description
runtime.host.authentication.provider null Hitelesítésszolgáltató
runtime.host.authentication.jwt.audience null JWT-célközönség
runtime.host.authentication.jwt.issuer null JWT-kiállító

Gyorsítótár beállításai

Property Default Description
runtime.cache.enabled false A válaszok globális gyorsítótárazásának engedélyezése
runtime.cache.ttl-seconds 5 Élettartam (másodperc) a globális gyorsítótárhoz

Telemetriai beállítások

Property Default Description
runtime.telemetry.application-insights.connection-string null Application Insights kapcsolati sztring
runtime.telemetry.application-insights.enabled false Az Application Insights telemetriai adatainak engedélyezése vagy letiltása
runtime.telemetry.open-telemetry.endpoint null OpenTelemetry collector URL-címe
runtime.telemetry.open-telemetry.headers {} OpenTelemetry exportálási fejlécek
runtime.telemetry.open-telemetry.service-name "dab" OpenTelemetry szolgáltatás neve
runtime.telemetry.open-telemetry.exporter-protocol "grpc" OpenTelemetry protocol ("grpc" vagy "httpprotobuf")
runtime.telemetry.open-telemetry.enabled true OpenTelemetria engedélyezése vagy letiltása
runtime.telemetry.log-level.namespace null Névtérspecifikus naplószint felülbírálása
runtime.health.enabled true Az állapot-ellenőrzési végpont engedélyezése vagy letiltása globálisan
runtime.health.roles null Az átfogó állapotvégpont engedélyezett szerepkörei
runtime.health.cache-ttl-seconds 5 Élettartam (másodperc) az állapot-ellenőrzési jelentés gyorsítótár-bejegyzéséhez
runtime.health.max-query-parallelism 4 Egyidejű állapotellenőrzési lekérdezések maximális száma (tartomány: 1–8)

Formátum áttekintése

{
  "runtime": {
    "pagination": {
      "max-page-size": <integer|null> (default: `100000`),
      "default-page-size": <integer|null> (default: `100`)
    },
    "rest": {
      "path": <string> (default: "/api"),
      "enabled": <true>|<false>,
      "request-body-strict": <true>|<false> (default: `true`)
    },
    "graphql": {
      "path": <string> (default: "/graphql"),
      "enabled": <true>|<false>,
      "allow-introspection": <true>|<false>,
      "depth-limit": <integer|null> (default: `null`),
      "multiple-mutations": {
        "create": {
          "enabled": <true>|<false> (default: `false`)
        }
      }
    },
    "host": {
      "mode": <"production"> (default) | <"development">,
      "max-response-size-mb": <integer|null> (default: `158`),
      "cors": {
        "origins": [ "<string>" ],
        "allow-credentials": <true>|<false> (default: `false`)
      },
      "authentication": {
        "provider": <string> (default: "AppService"),
        "jwt": {
          "audience": "<string>",
          "issuer": "<string>"
        }
      }
    }
  },
  "cache": {
    "enabled": <true>|<false> (default: `false`),
    "ttl-seconds": <integer> (default: `5`)
  },
  "telemetry": {
    "application-insights": {
      "connection-string": "<string>",
      "enabled": <true>|<false> (default: `true`)
    },
    "open-telemetry": {
      "endpoint": "<string>",
      "headers": "<string>",
      "service-name": <string> (default: "dab"),
      "exporter-protocol": <"grpc"> (default) | <"httpprotobuf">,
      "enabled": <true>|<false> (default: `true`)
    },
    "log-level": {
      // namespace keys
      "<namespace>": <"trace"|"debug"|"information"|"warning"|"error"|"critical"|"none"|null>
    }
  },
  "health": {
    "enabled": <true>|<false> (default: `true`),
    "roles": [ "<string>" ],
    "cache-ttl-seconds": <integer> (default: `5`),
    "max-query-parallelism": <integer> (default: `4`)
  }
}

Mód (Gazdagép futtatókörnyezete)

Parent Property Típus Required Default
runtime host enum (production | development) ❌ Nem production

Fejlesztési viselkedés

  • Engedélyezve van a Nitro (korábbi nevén Banana Cake Pop) a GraphQL-teszteléshez
  • Engedélyezett Swagger felhasználói felület REST-teszteléshez
  • Engedélyezett névtelen állapotellenőrzések
  • Fokozott naplózási részletesség (Hibakeresés)

Format

{
  "runtime": {
    "host": {
      "mode": "production" (default) | "development"
    }
  }
}

Válasz maximális mérete (gazdagép-futtatókörnyezet)

Parent Property Típus Required Default
runtime.host max-response-size-mb egész szám ❌ Nem 158

Az adott eredmény maximális méretét (megabájtban) állítja be. Mivel a nagy válaszok túlterhelhetik a rendszert, max-response-size-mb a túlterhelés elkerülése érdekében a teljes méretet (a sorok számától eltérően) korlátozza, ami különösen a nagy oszlopoknál, például a szövegnél vagy a JSON-nál történik.

Value Result
nincs beállítva Az alapértelmezett beállítás használata
null Az alapértelmezett beállítás használata
integer Bármely pozitív 32 bites egész szám
<= 0 Nem támogatott

Format

{
  "runtime": {
    "host": {
      "max-response-size-mb": <integer; default: 158>
    }
  }
}

GraphQL (futtatókörnyezet)

Parent Property Típus Required Default
runtime graphql objektum ❌ Nem -

Globális GraphQL-konfiguráció.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.graphql enabled boolean ❌ Nem None
runtime.graphql path karakterlánc ❌ Nem "/graphql"
runtime.graphql depth-limit egész szám ❌ Nem Nincs (korlátlan)
runtime.graphql allow-introspection boolean ❌ Nem True
runtime.graphql multiple-mutations.create.enabled boolean ❌ Nem False

Tulajdonságjegyzetek

  • A tulajdonsághoz nem engedélyezett a path mellékút.
  • Beágyazott lekérdezések korlátozására használható depth-limit .
  • Állítsa be allow-introspection úgy, hogy false elrejtse a GraphQL-sémát.
  • Több multiple-mutations entitás beszúrása egyetlen mutációba.

Format

{
  "runtime": {
    "graphql": {
      "enabled": <true> (default) | <false>
      "depth-limit": <integer|null> (default: `null`),
      "path": <string> (default: /graphql),
      "allow-introspection": <true> (default) | <false>,
      "multiple-mutations": {
        "create": {
          "enabled": <true> (default) | <false>
        }
    }
  }
}

Példa: több mutáció

Configuration

{
  "runtime": {
    "graphql": {
      "multiple-mutations": {
        "create": {
          "enabled": true
        }
      }
    }
  },
  "entities": {
    "User": {
      "source": "dbo.Users",
      "permissions": [
        {
          "role": "anonymous",
          "actions": ["create"] // entity permissions are required
        }
      ]
    }
  }
}

GraphQL-mutáció

mutation {
  createUsers(input: [
    { name: "Alice", age: 30, isAdmin: true },
    { name: "Bob", age: 25, isAdmin: false },
    { name: "Charlie", age: 35, isAdmin: true }
  ]) {
    id
    name
    age
    isAdmin
  }
}

REST (futtatókörnyezet)

Parent Property Típus Required Default
runtime rest objektum ❌ Nem -

Globális REST-konfiguráció.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.rest enabled boolean ❌ Nem None
runtime.rest path karakterlánc ❌ Nem "/api"
runtime.rest request-body-strict boolean ❌ Nem True

Tulajdonságjegyzetek

  • Ha globális enabled , akkor falseaz egyes entitásszintek enabled nem számítanak.
  • A path tulajdonság nem támogatja az olyan segédértékeket, mint a /api/data.
  • request-body-strict a .NET POCO-objektumok egyszerűsítése érdekében került bevezetésre.
request-body-strict Behavior
true A kérelem törzsében lévő további mezők kivételt okoznak BadRequest .
false A kérelem törzsében lévő további mezők figyelmen kívül lesznek hagyva.

Format

{
  "runtime": {
    "rest": {
      "enabled": <true> (default) | <false>,
      "path": <string> (default: /api),
      "request-body-strict": <true> (default) | <false>
    }
  }
}

Példa: request-body-strict

  • Az értékekkel rendelkező default() oszlopok csak akkor lesznek figyelmen kívül hagyvaINSERT, ha a hasznos adat értéke .null Ennek következtében INSERT az oszlopokban default() végzett műveletek , ha request-body-strict vannak true, nem eredményezhetnek explicit null értékeket. Ennek a viselkedésnek a végrehajtásához műveletre UPDATE van szükség.
  • A hasznos adatértéktől függetlenül a rendszer nem hagyja figyelmen kívül default() az egy UPDATE oszlopot tartalmazó oszlopokat.
  • A számított oszlopok mindig figyelmen kívül lesznek hagyva.
  • Az automatikusan létrehozott oszlopok mindig figyelmen kívül lesznek hagyva.

Mintatábla

CREATE TABLE Users (
    Id INT PRIMARY KEY IDENTITY, -- auto-generated column
    Name NVARCHAR(50) NOT NULL,
    Age INT DEFAULT 18, -- column with default
    IsAdmin BIT DEFAULT 0, -- column with default
    IsMinor AS IIF(Age <= 18, 1, 0) -- computed column
);

Hasznos adatok kérése

{
  "Id": 999,
  "Name": "Alice",
  "Age": null,
  "IsAdmin": null,
  "IsMinor": false,
  "ExtraField": "ignored"
}

Viselkedés beszúrása request-body-strict = false

INSERT INTO Users (Name) VALUES ('Alice');
-- Default values for Age (18) and IsAdmin (0) are applied by the database.
-- IsMinor is ignored because it’s a computed column.
-- ExtraField is ignored.
-- The database generates the Id value.

Választerhelés

{
  "Id": 1,          // Auto-generated by the database
  "Name": "Alice",
  "Age": 18,        // Default applied
  "IsAdmin": false, // Default applied
  "IsMinor": true   // Computed
}

Frissítési viselkedés, ha request-body-strict = false

UPDATE Users
SET Name = 'Alice Updated', Age = NULL
WHERE Id = 1;
-- IsMinor and ExtraField are ignored.

Választerhelés

{
  "Id": 1,
  "Name": "Alice Updated",
  "Age": null,
  "IsAdmin": false,
  "IsMinor": false // Recomputed by the database (false when age is `null`)
}

CORS (gazdagép-futtatókörnyezet)

Parent Property Típus Required Default
runtime.host cors objektum ❌ Nem -

Globális CORS-konfiguráció.

Tip

A CORS a "Forrásközi erőforrás-megosztás" rövidítése. Ez egy böngészőbiztonsági funkció, amely azt szabályozza, hogy a weblapok kérhetnek-e kéréseket egy másik tartományhoz, mint amelyik kiszolgálta őket.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.host.cors allow-credentials boolean ❌ Nem False
runtime.host.cors origins karakterlánc-tömb ❌ Nem None

Note

A allow-credentials tulajdonság beállítja a Access-Control-Allow-Credentials CORS-fejlécet.

Format

{
  "runtime": {
    "host": {
      "cors": {
        "allow-credentials": <true> (default) | <false>,
        "origins": ["<array-of-strings>"]
      }
    }
  }
}

Note

A helyettesítő karakter * a következő értékként originsérvényes: .

Szolgáltató (Hitelesítési gazdagép futtatókörnyezete)

Parent Property Típus Required Default
runtime.host.authentication provider enum (AppServiceSimulator | | EntraId | Custom) ❌ Nem None

Kiválasztja a hitelesítési módszert. Minden szolgáltató eltérően ellenőrzi az identitást. A részletes beállításhoz tekintse meg az alább hivatkozott útmutatókat.

Szolgáltató összefoglalása

Provider Felhasználási eset Identitásforrás Útmutató
(kihagyva) Csak névtelen hozzáférés None
AppService Azure-ban üzemeltetett alkalmazások (EasyAuth) X-MS-CLIENT-PRINCIPAL Fejléc App Service-hitelesítés konfigurálása
EntraID Microsoft Entra ID (Azure AD) JWT-tulajdonosi jogkivonat Entra ID hitelesítés konfigurálása
Custom Külső azonosítók (Okta, Hitelesítés0) JWT-tulajdonosi jogkivonat Egyéni JWT-hitelesítés konfigurálása
Simulator Csak helyi tesztelés Szimulált Szimulátor-hitelesítés konfigurálása

Note

A EntraId szolgáltató neve korábban el lett nevezve AzureAd. A régi név továbbra is kompatibilis.

Csak névtelen (nincs szolgáltató)

Ha a szakasz nincs megadva, a authentication DAB csak névtelen módban működik. Minden kérés a rendszerszerepkörhöz Anonymous van rendelve.

{
  "host": {
    // authentication section omitted
  }
}

AppService

Megbízik az Azure App Service EasyAuth által injektált identitásfejlécekben.

{
  "host": {
    "authentication": {
      "provider": "AppService"
    }
  }
}

EntraID

Ellenőrzi a Microsoft Entra ID által kibocsátott JWT-jogkivonatokat.

{
  "host": {
    "authentication": {
      "provider": "EntraId",
      "jwt": {
        "audience": "<application-id>",
        "issuer": "https://login.microsoftonline.com/<tenant-id>/v2.0"
      }
    }
  }
}

Személyre szabott

Ellenőrzi a külső identitásszolgáltatók JWT-jogkivonatait.

{
  "host": {
    "authentication": {
      "provider": "Custom",
      "jwt": {
        "audience": "<api-audience>",
        "issuer": "https://<your-idp-domain>/"
      }
    }
  }
}

Szimulátor

A hitelesítést szimulálja a helyi fejlesztéshez és teszteléshez.

{
  "host": {
    "authentication": {
      "provider": "Simulator"
    }
  }
}

Important

A Simulator szolgáltató csak akkor működik, ha runtime.host.mode van development. A DAB nem indul el, ha a szimulátor éles módban van konfigurálva.

Szerepkör kiválasztása

A Szimulátor kivételével minden szolgáltató esetében a X-MS-API-ROLE fejléc a hitelesített felhasználó jogcímei közül választja ki a használni kívánt szerepkört. Ha nincs megadva, a kérés a rendszerszerepkört Authenticated használja. A szerepkör-értékeléssel kapcsolatos részletekért lásd: Engedélyezés és szerepkörök.

JWT (Hitelesítési gazdagép futtatókörnyezete)

Parent Property Típus Required Default
runtime.host.authentication jwt objektum ❌ Nem -

Globális JSON-webjogkivonat (JWT) konfigurációja.

Data API Builderben támogatott JSON-webes jogkivonatok diagramja.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.host.authentication.jwt audience karakterlánc ❌ Nem None
runtime.host.authentication.jwt issuer karakterlánc ❌ Nem None

Format

{
  "runtime": {
    "host": {
      "authentication": {
        "jwt": {
          "audience": "<client-id>",
          "issuer": "<issuer-url>"
        }
      }
    }
  }
}

Lapozás (futtatókörnyezet)

Parent Property Típus Required Default
runtime pagination objektum ❌ Nem -

A REST- és GraphQL-végpontok globális lapszámozási korlátai.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.pagination max-page-size int ❌ Nem 100,000
runtime.pagination default-page-size int ❌ Nem 100
runtime.pagination next-link-relative boolean ❌ Nem false

Maximális oldalmérettel támogatott értékek

Value Result
integer Minden pozitív 32 bites egész szám támogatott.
0 Nem támogatott.
-1 Alapértelmezés szerint a maximálisan támogatott érték.
< -1 Nem támogatott.

Alapértelmezett oldalméretű támogatott értékek

Value Result
integer Az aktuális max-page-sizekisebb pozitív egész szám.
0 Nem támogatott.
-1 Az aktuális max-page-size beállítás alapértelmezett értéke.
< -1 Nem támogatott.

Ha next-link-relative igen, akkor a truelapozási nextLink értékek relatív URL-címeket használnak az abszolút URL-címek helyett.

Value Example
false (alapértelmezett) "nextLink": "https://localhost:5001/api/users?$after=..."
true "nextLink": "/api/users?$after=..."

Format

{
  "runtime": {
    "pagination": {
      "max-page-size": <integer; default: 100000>,
      "default-page-size": <integer; default: 100>,
      "next-link-relative": <boolean; default: false>
    }
  }
}

Note

Ha az érték nagyobb, mint max-page-size, az eredmények a következő időpontban max-page-sizelesznek leképezve: .

Példa: Lapozás REST-ben

Request

GET https://localhost:5001/api/users

Választerhelés

{
  "value": [
    {
      "Id": 1,
      "Name": "Alice",
      "Age": 30,
      "IsAdmin": true,
      "IsMinor": false
    },
    {
      "Id": 2,
      "Name": "Bob",
      "Age": 17,
      "IsAdmin": false,
      "IsMinor": true
    }
  ],
  "nextLink": "https://localhost:5001/api/users?$after=W3siRW50aXR5TmFtZSI6InVzZXJzIiwiRmllbGROYW1lI=="
}

Következő lap kérése

GET https://localhost:5001/api/users?$after=W3siRW50aXR5TmFtZSI6InVzZXJzIiwiRmllbGROYW1lI==

Példa: Lapozás a GraphQL-ben

Hasznos adatok kérése (lekérdezés)

query {
  users {
    items {
      Id
      Name
      Age
      IsAdmin
      IsMinor
    }
    hasNextPage
    endCursor
  }
}

Választerhelés

{
  "data": {
    "users": {
      "items": [
        {
          "Id": 1,
          "Name": "Alice",
          "Age": 30,
          "IsAdmin": true,
          "IsMinor": false
        },
        {
          "Id": 2,
          "Name": "Bob",
          "Age": 17,
          "IsAdmin": false,
          "IsMinor": true
        }
      ],
      "hasNextPage": true,
      "endCursor": "W3siRW50aXR5TmFtZSI6InVzZXJzIiwiRmllbGROYW1lI=="
    }
  }
}

Következő lap kérése

query {
  users(after: "W3siRW50aXR5TmFtZSI6InVzZXJzIiwiRmllbGROYW1lI==") {
    items {
      Id
      Name
      Age
      IsAdmin
      IsMinor
    }
    hasNextPage
    endCursor
  }
}

Példa: Hozzáférés kérésekben max-page-size

Használja az értéket a max-page-size (REST) vagy $limit a (GraphQL) beállításával first-1.

REST

GET https://localhost:5001/api/users?$limit=-1

GraphQL

query {
  users(first: -1) {
    items {
      ...
    }
  }
}

Gyorsítótár (futtatókörnyezet)

Parent Property Típus Required Default
runtime cache objektum ❌ Nem -

Globális gyorsítótár konfigurálása.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.cache enabled boolean ❌ Nem False
runtime.cache ttl-seconds egész szám ❌ Nem 5

Tip

Az entitásszintű cache.ttl-seconds tulajdonság alapértelmezés szerint erre a globális értékre van bekapcsolva.

Format

{
  "runtime": {
    "cache":  {
      "enabled": <boolean>,
      "ttl-seconds": <integer>
    }
  }
}

Important

Ha globális enabled , akkor falseaz egyes entitásszintek enabled nem számítanak.

Telemetria (futtatókörnyezet)

Parent Property Típus Required Default
runtime telemetry objektum ❌ Nem -

Globális telemetriai konfiguráció.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.telemetry log-level dictionary ❌ Nem None
runtime.telemetry application-insights objektum ❌ Nem -
runtime.telemetry open-telemetry objektum ❌ Nem -

A naplózás részletességét konfigurálja névtérenként. Ez a szabványos .NET-naplózási konvenciók szerint teszi lehetővé a részletes vezérlést, bár feltételezi, hogy a Data API Builder belső beállításainak ismerete némiképp ismerős. A Data API Builder nyílt forráskódú: https://aka.ms/dab

Format

{
  "runtime": {
    "telemetry": {
      "log-level": {
        "namespace": "log-level",
        "namespace": "log-level"
      }
    }
  }
}

Tip

log-level a fejlesztésben és az éles környezetben is gyakran újra betölthető. Jelenleg ez az egyetlen tulajdonság, amely támogatja a gyakori elérésű újratöltést az éles környezetben.

Example

{
  "runtime": {
    "telemetry": {
      "log-level": {
        "Azure.DataApiBuilder.Core.Configurations.RuntimeConfigValidator": "debug",
        "Azure.DataApiBuilder.Core": "information",
        "default": "warning"
      }
    }
  }
}

Application Insights (telemetria)

Parent Property Típus Required Default
runtime.telemetry application-insights objektum ❌ Nem -

Az Application Insightsba való naplózást konfigurálja.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.telemetry.application-insights enabled boolean ❌ Nem False
runtime.telemetry.application-insights connection-string karakterlánc ✔️ Igen None

Format

{
  "runtime": {
    "telemetry": {
      "application-insights": {
        "enabled": <true; default: true> | <false>
        "connection-string": <string>
      }
    }
  }
}

OpenTelemetria (telemetria)

Parent Property Típus Required Default
runtime.telemetry open-telemetry objektum ❌ Nem -

A naplózást a Telemetria megnyitása gombra konfigurálja.

Beágyazott tulajdonságok

Parent Property Típus Required Default
runtime.telemetry.open-telemetry enabled boolean ❌ Nem true
runtime.telemetry.open-telemetry endpoint karakterlánc ✔️ Igen None
runtime.telemetry.open-telemetry headers karakterlánc ❌ Nem None
runtime.telemetry.open-telemetry service-name karakterlánc ❌ Nem "dab"
runtime.telemetry.open-telemetry exporter-protocol enum (grpc | httpprotobuf) ❌ Nem grpc

Több fejléc ( , vessző) van elválasztva.

Format

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": <true> (default) | <false>,
        "endpoint": <string>,
        "headers": <string>,
        "service-name": <string> (default: "dab"),
        "exporter-protocol": <"grpc" (default) | "httpprotobuf">
      }
    }
  }
}

Example

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true,
        // a gRPC endpoint example
        "endpoint": "http://localhost:4317",
        // an HTTP/protobuf endpoint example
        "endpoint": "http://localhost:4318/v1/metrics",
        "headers": "api-key=key,other-config-value=value",
        "service-name": "dab",
      }
    }
  }
}

További információ a OTEL_EXPORTER_OTLP_HEADERS.

Note

A gRPC (4317) gyorsabb és támogatja a streamelést, de több beállítási lépést igényel. A HTTP/protobuf (4318) egyszerűbb és egyszerűbb hibakeresés, de kevésbé hatékony.

Állapot (futtatókörnyezet)

Parent Property Típus Required Default
runtime health objektum ❌ Nem -

Globális állapotellenőrzési végpont (/health) konfigurációja.

Beágyazott tulajdonságok

Parent Property Típus Required Default Tartomány/jegyzetek
runtime.health enabled boolean ❌ Nem true
runtime.health roles karakterlánc-tömb ✔️ Igen* null *Éles módban szükséges
runtime.health cache-ttl-seconds egész szám ❌ Nem 5 Min: 0
runtime.health max-query-parallelism egész szám ❌ Nem 4 Min: 1, Max: 8 (rögzített)

A fejlesztés és az éles környezet viselkedése

Condition Fejlesztési viselkedés Éles viselkedés
health.enabled = hamis 403 állapot 403 állapot
health.enabled = igaz Szerepkörtől függ Szerepkörtől függ
roles ki van hagyva vagy null Állapot jelenik meg 403 állapot
jelenlegi szerepkör nincs a következőben: roles 403 állapot 403 állapot
aktuális szerepkör a következőben: roles Állapot jelenik meg Állapot jelenik meg
roles Tartalmazza anonymous Állapot jelenik meg Állapot jelenik meg

Format

{
  "health": {
    "enabled": <true> (default) | <false>,
    "roles": [ <string> ], // required in production
    "cache-ttl-seconds": <integer; default: 5>,
    "max-query-parallelism": <integer; default: 4>
  }
}

Note

Ha globális enabled , akkor falseaz egyes entitásszintek enabled nem számítanak.

Example

{
  "health": {
    "enabled": true,
    "roles": ["admin", "support"],
    "cache-ttl-seconds": 10,
    "max-query-parallelism": 6
  }
}