亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

發布時間:2020-08-10 16:36:09 來源:ITPUB博客 閱讀:150 作者:chenoracle 欄目:關系型數據庫

集成手機平臺待辦數據失敗問題跟蹤和處理

Mongodb Oracle SQLServer

場景:

公司的集成手機平臺后臺的核心數據庫采用的Mongodb 讀寫分離架構,所有異構系統平臺 ( 財務、ERP 、計劃 ......)( 對應的數據庫ORACLE SQLServer Mysql ......) 流程待辦會實時推送到Mongodb 庫里,實現所有系統手機端移動審批。

問題:

各個系統供應商對接集成手機平臺系統水平參差不齊,經常出現個別系統待辦未推到集成手機平臺或待辦轉已辦失敗的問題;

解決方案:

各個系統供應商優化接口周期長,在優化完成之前,需要有手動處理機制,即出現待辦未推送或待辦轉已辦失敗問題,可以及時知道并及時手動處理。

一:待辦出現問題時,第一時間向相關系統管理員發送預警郵件,及時手動干預,避免問題升級;

二:監控大屏實時展示失敗的待辦信息;

三:當失敗的待辦數量很龐大,批量修復并定期集中處理歷史失敗的待辦;

一:待辦出現問題時,第一時間向相關系統管理員發送預警郵件,及時手動干預,避免問題升級;

由于待辦出現問題時會在相應系統數據庫里生成一條日志記錄,可以通過觸發器實現郵件預警,以SQLServer 數據庫為例:

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer) 集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer) 集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer) 集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

二:監控大屏實時展示失敗的待辦信息

通過Grafana 監控平臺,可以添加 SQLServer 等數據源,實時展現失敗待辦信息;

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer) 集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

三:當失敗的待辦數量很龐大,批量修復或定期處理歷史失敗的待辦

可以通過集成手機平臺數據庫(Mongodb) 的待辦表和各個系統數據庫 (ORACLE SQLServer Mysql) 待辦表做對比:

1 集成手機平臺數據庫 (Mongodb) 的待辦數據多于各個系統數據庫待辦數據,表示待辦轉已辦失敗,需要手動刪除多余的待辦信息;

2 集成手機平臺數據庫 (Mongodb) 的待辦數據少于各個系統數據庫待辦數據,表示待辦推送失敗,需要手動重推;

那么如何批量查出所有系統待辦轉已辦失敗的數據

(1) 導出集成手機平臺數據庫(Mongodb) 的待辦數據到 execl

Mongodb 所在服務器操作系統為 Centos7.5, 可以在自己電腦上安裝一個 Mongodb 客戶端,使用 mongoexport 工具導出數據;

導出語句:

D:\MongoDB\Server\3.4\bin>

mongoexport.exe --csv --host 192.100.100.100:27017 /d testdb /c TEST_TdUndo /f "_id,userName,account,createTime,content" /q "{"delete": false}" /o C:\Users\Administrator\Desktop\all cjc _Undo1219a.csv

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

默認情況下打開CSV 文件中文是亂碼的:

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

通過如下方式解決亂碼問題:

--- 打開方式 ( 記事本 )--- 格式 --- 字體 --- 中文 GB2312--- 保存 ----csv 方式打開 --- 調整格式 --- 另存為 execl 格式文件

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

( 2 ) 導出各個系統數據庫(ORACLE SQLServer Mysql) 的待辦數據到 execl

例如 系統1

select Name, Account , Ini Date, content  from undoerp

where UnDoStatus=' 待辦 '

and  CreateDate>='2019-11- 01  08:00:00.000'

and  CreateDate<='2019-12- 01  23:59:00.000';

(3) 對比數據

---1 集成手機平臺數據庫 (Mongodb) 的待辦數據多于各個系統數據庫待辦數據,表示待辦轉已辦失敗,需要手動刪除;

---2 集成手機平臺數據庫 (Mongodb) 的待辦數據少于各個系統數據庫待辦數據,表示待辦推送失敗,需要手動重推;

數據對比有兩種方式:

1 :通過execl 函數對比各個系統數據,找出待辦轉已辦失敗的數據和待辦未推的數據;

但是實際情況可能會比較復雜,比如各系統時間格式不一致、推送待辦有延時、標題不一致等問題,通過execl 很難對比數據,可以通過 SQL 語句實現數據對比;

2 :將所有系統對應的Mongodb Oracle SQLServer Mysql 待辦數據導出到execl 中,在將所有系統execl 數據通過plsql 全部導入到 oracle 數據庫中,通過 sql 對比找出想要的數據,例如 Mongodb 數據表左連接各系統Oracle SQLServer Mysql 數據表,匹配不上的數據,既是待辦轉已辦失敗的數據。 Oracle SQLServer Mysql 數據表左連接 Mongodb 數據表,匹配不上的數據,既是未推待辦的數據。

(1)oracle 先創建多張表,并通過plsql 導入各個系統數據;

例如:

create table undo cjc (id varchar2(500),userName varchar2(500),account varchar2(100), updateTime varchar2(100),content nvarchar2(2000));

select * from undo cjc  for update;

create table undo erp (userName varchar2(500),account varchar2(100), updateTime varchar2(100),content nvarchar2(2000),isstart varchar2(100));

select * from undo erp  for update;

……

(2) 通過sql 進行數據對比

select distinct a.id,a.username cjc 用戶名,

                a.account cjc 登錄名,

                a.updatetime cjc 到達時間,

                a.content enanar 標題 ,

                b.username erp 用戶名 ,

                b.account erp 登錄名 ,

                b.updatetime erp 到達時間 ,

                b.content erp 標題

  from undo cjc  a

  left JOIN undoerp b

    on a.account = b.account

   and a.content like '%' || b.content || '%'

 where a.content = xxx 系統

 order by erp 登錄名 ;

右側沒有匹配上的數據,既是待辦轉已辦失敗的數據;

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

邏輯刪除有問題的待辦:

即通過主鍵ID 唯一定位到有問題的待辦,將 delete 字段值由 false 改成 true

單條語句如下:

db.T_ChenUndo.update({"_id":ObjectId("5dd3xxxxx"),"account":"cjc","delete":false},{$set:{delete:true}},{multi:true});

根據ID 等信息,批量生成刪除錯誤待辦的腳本,即可批量修復待辦轉已辦失敗問題;

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)

集成手機平臺待辦數據失敗問題跟蹤和處理(Mongodb、Oracle、SQLServer)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

饶平县| 皋兰县| 民乐县| 红河县| 贞丰县| 孟津县| 茂名市| 梅州市| 万全县| 祁东县| 沁阳市| 论坛| 腾冲县| 民县| 佛教| 邢台市| 弥渡县| 张北县| 安仁县| 探索| 安远县| 碌曲县| 思南县| 大连市| 霍邱县| 古田县| 兰考县| 睢宁县| 延庆县| 沙洋县| 嘉鱼县| 长垣县| 依兰县| 柳林县| 荥阳市| 龙海市| 珲春市| 山阴县| 宁津县| 二连浩特市| 东乡族自治县|