<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] Docker 日志分為兩類: * 引擎日志:運行日志, * 容器日志:容器內的服務產生的日志。 # <span style="font-size:15px">**Docker 容器日志**</span> ## <span style="font-size:15px">**查看日志**</span> **1. 使用命令查看** > 命令:docker logs CONTAINER > * -f :?跟蹤日志輸出 > * --since :顯示某個開始時間的所有日志 > * -t :?顯示時間戳 > * --tail :僅列出最新N條容器日志 ``` 查看最近30分鐘的日志: $ docker logs --since 30m f725238cfc79 查看某時間之后的日志: $ docker logs -t --since="2018-02-08T13:23:37" f725238cfc79 ? 查看某時間段日志: $ docker logs -t --since="2018-02-08T13:23:37" --until "2021-02-09T12:23:37" f725238cfc79 ? 實時查看docker容器日志,只顯示最后100行 $ docker logs -f --tail=100 f725238cfc79 ``` &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UNIX 和 Linux 的命令有三種 輸入輸出,分別是 標準輸入(STDIN)、標準輸出(STDOUT)、標準錯誤輸出(STDERR)。通過`docker logs`命令查看的容器日志,只包含容器的標準輸出(STDOUT)與標準錯誤輸出(STDERR)。 > nginx 官方鏡像,使用了一種方式,讓日志輸出到 STDOUT,也就是 創建一個符號鏈接/var/log/nginx/access.log 到 /dev/stdout。 > httpd 使用的是 讓其輸出到指定文件 ,正常日志輸出到 /proc/self/fd/1 (STDOUT) ,錯誤日志輸出到 /proc/self/fd/2 (STDERR)。. ``` https://github.com/nginxinc/docker-nginx/blob/fef51235521d1cdf8b05d8cb1378a526d2abf421/mainline/debian/Dockerfile # forward request and error logs to docker log collector && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log \ ``` &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果容器內部應用日志是輸出到日志文件(比如Spring Boot項目或Tomcat容器,一般將日志輸出到日志文件中),則無法通過 `docker logs` 命令查看。`docker logs` 會顯示歷史日志,日志數量過多時會對Docker Daemon造成一定的壓力。可使用 `docker logs --tail 200 container_id`來查看最新的N條或使用`docker logs -f container_id`(類似于tail -f)。 <vr> **2. 通過日志文件查看** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;當日志量比較大的時候,我們使用 docker logs 來查看日志,會對 docker daemon 造成比較大的壓力,會導致容器創建慢等一系列問題,所以通過日志文件查看更合理。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;日志文件位置:`/var/lib/docker/containers/container_name/xxxx-json.log` ## <span style="font-size:15px">**日志清理**</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;docker啟動容器必須有前臺輸出,為防止這些日志積累,我們需要清理或限制日志文件大小。 **1. 清空日志文件-臨時解決方案** ``` cat /dev/null > c8c49aac99d86a501b8e2822d6db45d45cecc8781b6b0178a655c24f0ddc6d5a-json.log ``` &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;這里使用linux標準的空文件寫入的方式來清空,而不是直接刪除文件的方式,原因在于刪除這個日志,容器并不會釋放空間,需要重啟容器。 **2. 單個容器限制日志大小** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第一種方式,通過配置容器docker-compose的max-size選項來實現,重啟容器后即可生效。 ``` nginx: image: nginx:1.12.1 restart: always logging: driver: "json-file" options: max-size: "5g" ``` &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第二種方式,使用docker命令啟動容器或者創建容器時,使用`--log-driver`標記來設置該容器的日志驅動。 ``` docker run --log-driver syslog --log-opt syslog-address=udp://1.2.3.4:1111 alpine echo hello world ``` **3. docker全局限制日志大小** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在`/etc/docker/daemon.json`中添加如下內容,限制容器文件大小為50m,可以存在的最大日志文件數。如果切割日志會創建超過閾值的文件數,則會刪除最舊的文件。這個機制跟[日志驅動]()有關。 ``` { "log-driver":"json-file", "log-opts": {"max-size":"50m", "max-file":"3"} } ``` &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;修改之后,需要重啟docker守護進程,此方法只對新建的容器起效:` systemctl daemon-reload && systemctl restart docker`。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看