自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用Python腳本發(fā)現(xiàn)OpenStack Overcloud中的問題

開發(fā) 后端 OpenStack
LogTool 是一組 Python 腳本,可幫助你找出 Overcloud 節(jié)點中問題的根本原因。

[[314897]]

LogTool 是一組 Python 腳本,可幫助你找出 Overcloud 節(jié)點中問題的根本原因。

OpenStack 在其 Overcloud 節(jié)點和 Undercloud 主機上存儲和管理了一堆日志文件。因此,使用 OSP 日志文件來排查遇到的問題并不是一件容易的事,尤其在你甚至都不知道是什么原因?qū)е聠栴}時。

如果你正處于這種情況,那么 LogTool 可以使你的生活變得更加輕松!它會為你節(jié)省本需要人工排查問題所需的時間和精力。LogTool 基于模糊字符串匹配算法,可提供過去發(fā)生的所有唯一錯誤和警告信息。你可以根據(jù)日志中的時間戳導(dǎo)出特定時間段(例如 10 分鐘前、一個小時前、一天前等)的這些信息。

LogTool 是一組 Python 腳本,其主要模塊 PyTool.py 在 Undercloud 主機上執(zhí)行。某些操作模式使用直接在 Overcloud 節(jié)點上執(zhí)行的其他腳本,例如從 Overcloud 日志中導(dǎo)出錯誤和警告信息。

LogTool 支持 Python 2 和 Python 3,你可以根據(jù)需要更改工作目錄:LogTool_Python2 or LogTool_Python3。

操作方式

1、從 Overcloud 日志中導(dǎo)出錯誤和警告信息

此模式用于從過去發(fā)生的 Overcloud 節(jié)點中提取 錯誤警告 信息。作為用戶,系統(tǒng)將提示你提供“開始時間”和“調(diào)試級別”,以用于提取錯誤或警告消息。例如,如果在過去 10 分鐘內(nèi)出了問題,你則可以只提取該時間段內(nèi)的錯誤和警告消息。

此操作模式將為每個 Overcloud 節(jié)點生成一個包含結(jié)果文件的目錄。結(jié)果文件是經(jīng)過壓縮的簡單文本文件(*.gz),以減少從 Overcloud 節(jié)點下載所需的時間。將壓縮文件轉(zhuǎn)換為常規(guī)文本文件,可以使用 zcat 或類似工具。此外,Vi 的某些版本和 Emacs 的任何最新版本均支持讀取壓縮數(shù)據(jù)。結(jié)果文件分為幾部分,并在底部包含目錄。

LogTool 可以即時檢測兩種日志文件:標準和非標準。在標準文件中,每條日志行都有一個已知的和已定義的結(jié)構(gòu):時間戳、調(diào)試級別、信息等等。在非標準文件中,日志的結(jié)構(gòu)未知。例如,它可能是第三方的日志。在目錄中,你可以找到每個部分的“名稱 –> 行號”例如:

  • 原始數(shù)據(jù) - 從標準 OSP 日志中提取的錯誤/警告消息: 這部分包含所有提取的錯誤/警告消息,沒有任何修改或更改。這些消息是 LogTool 用于模糊匹配分析的原始數(shù)據(jù)。
  • 統(tǒng)計信息 - 每個標準 OSP 日志的錯誤/警告信息數(shù)量: 在此部分,你將找到每個標準日志文件的錯誤和警告數(shù)量。這些信息可以幫助你了解用于排查問題根本原因的潛在組件。
  • 統(tǒng)計信息 - 每個標準 OSP 日志文件的唯一消息: 這部分提供指定時間戳內(nèi)的唯一的錯誤和警告消息。有關(guān)每個唯一錯誤或警告的更多詳細信息,請在“原始數(shù)據(jù)”部分中查找相同的消息。
  • 統(tǒng)計信息 - 每個非標準日志文件在任意時間的唯一消息: 此部分包含非標準日志文件中的唯一消息。遺憾的是,LogTool 無法像標準日志文件那樣的處理方式處理這些日志文件。因此,在你提取“特定時間”的日志信息時會被忽略,你會看到過去創(chuàng)建的所有唯一的錯誤/警告消息。因此,首先,向下滾動到結(jié)果文件底部的目錄并查看其部分-使用目錄中的行索引跳到相關(guān)部分,其中第 3、4 和 5 行的信息最重要。

2、從 Overcloud 節(jié)點下載所有日志

所有 Overcloud 節(jié)點的日志將被壓縮并下載到 Undercloud 主機上的本地目錄。

3、所有 Overcloud 日志中搜索字符串

該模式“grep”(搜索)由用戶在所有 Overcloud 日志上提供的字符串。例如,你可能希望查看特定請求的所有日志消息,例如,“Create VM”的失敗的請求 ID。

4、檢查 Overcloud 上當前的 CPU、RAM 和磁盤使用情況

該模式顯示每個 Overcloud 節(jié)點上的當前 CPU、RAM 和磁盤信息。

5、執(zhí)行用戶腳本

該模式使用戶可以在 Overcloud 節(jié)點上運行自己的腳本。例如,假設(shè) Overcloud 部署失敗,你就需要在每個控制器節(jié)點上執(zhí)行相同的過程來修復(fù)該問題。你可以實現(xiàn)“替代方法”腳本,并使用此模式在控制器上運行它。

6、僅按給定的時間戳下載相關(guān)日志

此模式僅下載 Overcloud 上 “給定的時間戳”的“上次修改時間”的日志。例如,如果 10 分鐘前出現(xiàn)錯誤,則與舊日志文件就沒有關(guān)系,因此無需下載。此外,你不能(或不應(yīng))在某些錯誤報告工具中附加大文件,因此此模式可能有助于編寫錯誤報告。

7、從 Undercloud 日志中導(dǎo)出錯誤和警告信息

這與上面的模式 1 相同。

8、在 Overcloud 上檢查不正常的 docker

此模式用于在節(jié)點上搜索不正常的 Docker。

9、下載 OSP 日志并在本地運行 LogTool

此模式允許你從 Jenkins 或 Log Storage 下載 OSP 日志(例如,cougar11.scl.lab.tlv.redhat.com),并在本地分析。

10、在 Undercloud 上分析部署日志

此模式可以幫助你了解 Overcloud 或 Undercloud 部署過程中出了什么問題。例如,在overcloud_deploy.sh 腳本中,使用 --log 選項時會生成部署日志;此類日志的問題是“不友好”,你很難理解是什么出了問題,尤其是當詳細程度設(shè)置為 vv 或更高時,使得日志中的數(shù)據(jù)難以讀取。此模式提供有關(guān)所有失敗任務(wù)的詳細信息。

11、分析 Gerrit(Zuul)失敗的日志

此模式用于分析 Gerrit(Zuul)日志文件。它會自動從遠程 Gerrit 門下載所有文件(HTTP 下載)并在本地進行分析。

安裝

GitHub 上有 LogTool,使用以下命令將其克隆到你的 Undercloud 主機:

  1. git clone https://github.com/zahlabut/LogTool.git

該工具還使用了一些外部 Python 模塊:

Paramiko

默認情況下,SSH 模塊通常會安裝在 Undercloud 上。使用以下命令來驗證是否已安裝:

  1. ls -a /usr/lib/python2.7/site-packages | grep paramiko

如果需要安裝模塊,請在 Undercloud 上執(zhí)行以下命令:

  1. sudo easy_install pip
  2. sudo pip install paramiko==2.1.1

BeautifulSoup

此 HTML 解析器模塊僅在使用 HTTP 下載日志文件的模式下使用。它用于解析 Artifacts HTML 頁面以獲取其中的所有鏈接。安裝 BeautifulSoup,請輸入以下命令:

  1. pip install beautifulsoup4

你還可以通過執(zhí)行以下命令使用 requirements.txt 文件安裝所有必需的模塊:

  1. pip install -r requirements.txt

配置

所有必需的參數(shù)都直接在 PyTool.py 腳本中設(shè)置。默認值為:

  1. overcloud_logs_dir = '/var/log/containers'
  2. overcloud_ssh_user = 'heat-admin'
  3. overcloud_ssh_key = '/home/stack/.ssh/id_rsa'
  4. undercloud_logs_dir ='/var/log/containers'
  5. source_rc_file_path='/home/stack/'

用法

此工具是交互式的,因此要啟動它,只需輸入:

  1. cd LogTool
  2. python PyTool.py

排除 LogTool 故障

在運行時會創(chuàng)建兩個日志文件:Error.logRuntime.log。請在你要打開的問題的描述中添加兩者的內(nèi)容。

局限性

LogTool 進行硬編碼以處理最大 500 MB 的文件。

LogTool_Python3 腳本

github.com/zahlabut/LogTool 獲取。

 

責任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2014-02-11 09:38:44

OpenStack開源云計算

2010-02-01 13:34:59

Python 腳本

2024-06-03 11:43:55

2010-02-23 10:32:20

Python 腳本

2010-08-03 17:19:43

NFS服務(wù)

2010-03-26 15:14:26

Python編寫

2014-01-02 15:16:42

PythonLinux服務(wù)器服務(wù)器監(jiān)控

2015-05-26 11:10:45

沃爾瑪OpenStack

2018-07-05 10:48:57

OpenStack對象存儲WOT

2010-03-10 13:42:44

Python腳本

2021-07-27 07:40:28

Python

2015-08-13 14:35:43

2010-03-08 19:03:23

Python腳本

2021-12-30 10:55:54

Python游戲腳本

2022-01-27 14:12:49

Python游戲腳本

2018-04-12 18:00:43

OpenStack大數(shù)據(jù)容器

2018-06-05 14:02:05

OpenStack虛擬機網(wǎng)絡(luò)

2013-09-11 17:09:53

OpenStack紅帽

2011-12-12 09:08:48

OpenStack虛擬機監(jiān)控

2010-02-01 13:25:32

Python腳本
點贊
收藏

51CTO技術(shù)棧公眾號