Naplók írása egyéni állandó tárterületre a Logback használatával
Feljegyzés
Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken a régi nevet fogja látni egy darabig, miközben az eszközök, például képernyőképek, videók és diagramok frissítésével dolgozunk.
Ez a cikk a következőre vonatkozik: ✔️ Java ❌ C#
Ez a cikk a következőre vonatkozik: ✔️ Basic/Standard ✔️ Enterprise
Ez a cikk bemutatja, hogyan töltheti be a naplókat, és hogyan írhat naplókat egyéni állandó tárolóba az Azure Spring Appsben.
Feljegyzés
Ha egy fájl az alkalmazás osztályútvonalában az alábbi nevek egyikével rendelkezik, a Spring Boot automatikusan betölti azt a Logback alapértelmezett konfigurációján:
- logback-spring.xml
- logback.xml
- logback-spring.groovy
- logback.groovy
Előfeltételek
- Egy Azure Spring Apps-példányhoz kötött meglévő tárolási erőforrás. Ha tárolóerőforrást kell kötnie, olvassa el a saját állandó tárterület engedélyezését az Azure Spring Appsben.
- Az alkalmazás bejelentkezési függősége. A kijelentkezésről további információt az Útmutató a visszavételhez című témakörben talál.
- Az Azure Spring Apps-bővítmény az Azure CLI-hez
Naplók adott elérési útra való írásához módosítsa a bejelentkezési konfigurációt
Az logback-spring.xml példafájl használatával beállíthatja, hogy a naplók hol lesznek megírva.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="Console"
class="ch.qos.logback.core.ConsoleAppender">
<!-- please feel free to customize the log layout -->
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%black(%d{ISO8601}) %highlight(%-5level) [%blue(%t)] %yellow(%C{1.}): %msg%n%throwable
</Pattern>
</layout>
</appender>
<appender name="RollingFile"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 'LOGS' here is a value to be read from the application's environment variable -->
<file>${LOGS}/spring-boot-logger.log</file>
<!-- please feel free to customize the log layout pattern -->
<encoder
class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%d %p %C{1.} [%t] %m%n</Pattern>
</encoder>
<rollingPolicy
class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- rollover daily and when the file reaches 10 MegaBytes -->
<fileNamePattern>${LOGS}/archived/spring-boot-logger-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<!-- LOG everything at the INFO level -->
<root level="info">
<appender-ref ref="RollingFile" />
<appender-ref ref="Console" />
</root>
<!-- LOG "com.baeldung*" at the TRACE level -->
<logger name="com.baeldung" level="trace" additivity="false">
<appender-ref ref="RollingFile" />
<appender-ref ref="Console" />
</logger>
</configuration>
Az előző példában két helyőrző van elnevezve {LOGS}
az alkalmazás naplóinak írási útvonalában. Egy értéket hozzá kell rendelni a környezeti változóhoz LOGS
, hogy a napló írása a konzolra és az állandó tárolóra is legyen.
Új alkalmazás létrehozása és üzembe helyezése az Azure CLI használatával az állandó tárterületre történő bejelentkezéssel
Az alábbi paranccsal hozzon létre egy alkalmazást az Azure Spring Appsben az állandó tárterület engedélyezésével és a környezeti változókészlettel:
az spring app create \ --resource-group <resource-group-name> \ --name <app-name> \ --service <spring-instance-name> \ --persistent-storage <path-to-json-file> \ --env LOGS=/byos/logs
Feljegyzés
A környezeti változó értéke
LOGS
lehet ugyanaz, mintmountPath
a .Íme egy példa a létrehozási parancsban a
--persistent-storage
paraméternek átadott JSON-fájlra. Ebben a példában ugyanez az érték lesz átadva a környezeti változónak a fenti CLI-parancsban és azmountPath
alábbi tulajdonságban:{ "customPersistentDisks": [ { "storageName": "<Storage-Resource-Name>", "customPersistentDiskProperties": { "type": "AzureFileVolume", "shareName": "<Azure-File-Share-Name>", "mountPath": "/byos/logs", "readOnly": false } } ] }
Az alkalmazás üzembe helyezéséhez használja a következő parancsot:
az spring app deploy \ --resource-group <resource-group-name> \ --name <app-name> \ --service <spring-instance-name> \ --artifact-path <path-to-jar-file>
Az alkalmazás konzolnaplójának ellenőrzéséhez használja a következő parancsot:
az spring app logs \ --resource-group <resource-group-name> \ --name <app-name> \ --service <spring-instance-name>
Nyissa meg a kötött Azure Storage-fiók erőforrást, és keresse meg az állandó tárként csatolt Azure-fájlmegosztást. Ebben a példában a naplók az Azure-fájlmegosztás gyökerénél lévő spring-boot-logger.log fájlba lesznek írva. Az összes elforgatott naplófájl az Azure-fájlmegosztás /archivált mappájában lesz tárolva.
Ha szeretné, a következő paranccsal frissítse egy meglévő alkalmazás elérési útját vagy állandó tárterületét:
A naplók mentési útvonala vagy állandó tárterülete bármikor módosítható. Az alkalmazás újraindul, amikor módosítják a környezeti változókat vagy az állandó tárterületet.
az spring app update \ --resource-group <resource-group-name> \ --name <app-name> \ --service <spring-instance-name> \ --persistent-storage <path-to-new-json-file> \ --env LOGS=<new-path>
Következő lépések
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: