本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
檢視 AWS Panorama 日誌
AWS Panorama 向亞馬遜報告應用程式和系統事件 CloudWatch 日誌。遇到問題時,您可以使用事件日誌協助偵錯 AWS Panorama 應用程式或對應用程式的組態進行故障診斷。
若要檢視日誌 CloudWatch 日誌
-
在下列群組中尋找 AWS Panorama 應用程式和設備日誌:
-
裝置記錄–
/aws/panorama/devices/
device-id
-
應用程式記錄–
/aws/panorama/devices/
device-id
/applications/instance-id
-
更新系統軟體後重新佈建設備時,也可以檢視佈建 USB 磁碟機上的日誌。
檢視裝置日誌
AWS Panorama 設備會為裝置建立日誌群組,並為您部署的每個應用程式執行個體建立一個群組。裝置記錄包含應用程式狀態、軟體升級和系統組態的相關資訊。
裝置記錄 —/aws/panorama/devices/device-id
device-id
-
occ_log
— 來自控制器進程的輸出。此程序會協調應用程式部署,並報告每個應用程式執行個體節點的狀態。 -
ota_log
— 從坐標的過程輸出 over-the-air (OTA) 軟體升級。 -
syslog
— 從設備的 syslog 進程輸出,該過程捕獲進程之間發送的消息。 -
kern_log
— 來自設備 Linux 內核的事件。 -
logging_setup_logs
— 從配置的過程輸出 CloudWatch 日誌代理程式。 -
cloudwatch_agent_logs
— 從輸出 CloudWatch 日誌代理程式。 -
shadow_log
— 從輸出AWS IoTDevice Shadow。
檢視應用程式日誌
應用程式執行個體的日誌群組包含以節點命名的每個節點的日誌串流。
應用程序日誌-/aws/panorama/devices/device-id
/applications/instance-id
device-id
/applications/instance-id
-
Code— 從應用程式程式碼和 AWS Panorama 應用程式開發套件輸出。從彙總應用程式記錄檔
/opt/aws/panorama/logs
。 -
模型— 使用模型協調推論請求的程序輸出。
-
串流— 從解碼攝像機流中的視頻的過程輸出。
-
顯示— 從渲染 HDMI 端口視頻輸出的過程中輸出。
-
mds
— 記錄來自應用裝置中繼資料伺服器。 -
console_output
— 從程式碼容器擷取標準輸出和錯誤串流。
如果未在中看到日誌 CloudWatch 日誌,確認您位於正確的 AWS 區域。如果是,則設備與 AWS 的連線可能發生問題,或在許可該設備的AWS Identity and Access Management(IAM) 角色。
設定應用程式日誌
設定 Python 記錄器以將日誌寫入/opt/aws/panorama/logs
。應用裝置會將記錄從此位置串流至 CloudWatch 日誌。若要避免使用過多的磁碟空間,請使用 10 MiB 的檔案大小上限,備份計數為 1。下列範例會示範建立日誌的方法。
範例 application.py — 記錄器組態
def get_logger(name=__name__,level=logging.INFO): logger = logging.getLogger(name) logger.setLevel(level)
LOG_PATH = '/opt/aws/panorama/logs'
handler = RotatingFileHandler("{}/app.log".format(LOG_PATH), maxBytes=10000000, backupCount=1)
formatter = logging.Formatter(fmt='%(asctime)s %(levelname)-8s %(message)s', datefmt='%Y-%m-%d %H:%M:%S') handler.setFormatter(formatter) logger.addHandler(handler) return logger
在全局範圍初始化記錄器,並在整個應用程序代碼中使用它。
範例 application.py — 初始化記錄器
def main(): try: logger.info("INITIALIZING APPLICATION") app = Application() logger.info("PROCESSING STREAMS") while True: app.process_streams() # turn off debug logging after 150 loops if logger.getEffectiveLevel() == logging.DEBUG and app.frame_num == 150: logger.setLevel(logging.INFO) except: logger.exception('Exception during processing loop.')
logger = get_logger(level=logging.INFO)
main()
檢視佈建日誌
在佈建期間,AWS Panorama 設備會將日誌複製到您用來將組態存檔傳輸到設備的 USB 磁碟機。使用這些記錄可疑難排解使用最新軟體版本之應用裝置的佈建問題。
重要
佈建記錄檔適用於更新至軟體 4.3.23 版或更新版本的應用裝置。
應用程式記錄
-
/panorama/occ.log
— AWS Panorama 控制器軟體日誌。 -
/panorama/ota_agent.log
— AWS Panorama over-the-air 更新代理程式記錄檔。 -
/panorama/syslog.log
— 系統日誌. -
/panorama/kern.log
— 核心記錄檔。
從裝置輸出記錄檔
如果您的裝置和應用程式記錄未出現在 CloudWatch 日誌,您可以使用 USB 驅動器從設備中獲取加密的日誌圖像。AWS Panorama 服務團隊可以代表您解密日誌並協助進行除錯。
先決條件
要按照該過程,您將需要以下硬件:
-
USB 隨身碟— 具有至少 1 GB 儲存空間的 FAT32 格式 USB 快閃記憶體磁碟機,用於從 AWS Panorama 設備傳輸記錄檔。
從裝置輸出記錄
您無法自己解密日誌映像。與客戶支援、AWS Panorama 技術客戶經理或解決方案架構師合作,與服務團隊協調。