• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Creative Commons License
            本Blog采用 知識共享署名-非商業性使用-禁止演繹 3.0 Unported許可協議 進行許可。 —— Fox <游戲人生>

            游戲人生

            游戲人生 != ( 人生 == 游戲 )
            站點遷移至:http://www.yulefox.com。請訂閱本博的朋友將RSS修改為http://feeds.feedburner.com/yulefox
            posts - 62, comments - 508, trackbacks - 0, articles - 7

            日志該這么記錄

            Posted on 2008-10-10 04:18 Fox 閱讀(1843) 評論(8)  編輯 收藏 引用

            作者:Fox

            本文同時發布在http://www.yulefox.comhttp://m.shnenglu.com/fox

            兩個多月之前,在CPPBLOG上寫過一篇關于游戲開發中的問題,主要該考慮的問題都已經說明,當時沒有實現這一塊。在最近一個模塊中,寫了一個非常簡單的寫日志的接口,接口的聲明大概是:

            void PutoutLog(const char *szFile, const char *szLog, ...);

            記錄的日志格式如下:

            1  2008-10-10-03:30:10.618 | projectpath/srcfile.cpp/function(30) : 哦嚯, 這兒出錯了(eno : 0x00100000).

            用到了__FILE__、__LINE__、__FUNCTION__幾個宏。

            基本滿足需要了,需要改進的地方我現在能想到的主要是:

            • 文件名是全路徑,沒有必要,只記錄文件名稱其實就夠了;
            • 沒有考慮寫日志時的線程同步問題;
            • 系統dump時的日志還是沒有辦法記錄;
            • 缺少足夠的、動態的上下文信息:調用堆棧、函數參數、系統運行參數;
            • 日志記錄到普通文本中,雖然記錄了時間、位置,還是不便于系統查看、查找、分析、挖掘。

            說白了,這所謂的基本滿足需要只是皮毛,因為最近在打理,有感于網頁數據庫技術的博大精深、美妙直觀,如果可以把日志用網頁數據庫作為讀寫的載體,豈不甚妙?

            隱約中感覺這種想法似曾相識,不識字只好亂翻書,果然在中發現有這樣一篇文章:一個基于HTML的日志和調試系統。有興趣的同學自己翻書吧:)。

            如果將更加豐富的信息寫入xml或php文件中,加入到數據庫,可以對數據進行分析、挖掘,并友好的顯示在瀏覽器中,這對于枯燥的debug過程,起碼增添了些許益處。

            然而,這又只是一個想法,或許在我手頭上的工作稍后告一段落的時候,我可以花精力研究一下這方面的東西。

            Feedback

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 09:21 by 四佰cc
            你可以看看bekely db 記錄log應該不錯

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 09:28 by www.helpsoff.com.cn
            最好還是保留全路徑吧,系統龐大的時候總會有同名文件的。

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 14:25 by 阿福
            const void PutoutLog(const char *szFile, const char *szLog, ...) const;

            請問在一個C函數的兩頭加上const是什么意思?
            你的意圖是什么?

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 14:55 by Fox
            @阿福
            這個是成員函數,所以后面加了;這兒沒有上下文,去掉更好理解了。
            前面加是筆誤:)。

            # re: 日志該這么記錄[未登錄]  回復  更多評論   

            2008-10-10 16:35 by
            看看這個怎樣?

            http://m.shnenglu.com/wish/archive/2008/08/30/60310.html

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 20:36 by 空明流轉
            我還是等某個log庫成功進入boost再說吧。。。

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-10 20:43 by dikatour
            我覺得簡單一點比較好。
            展現形式并不一定要花哨,反而如何選擇合適的日志記錄點和時機比較重要。少則不全,多則冗余。

            # re: 日志該這么記錄  回復  更多評論   

            2008-10-16 17:58 by 浪跡天涯
            log,我覺得關鍵的有這幾點:
            1.記錄信息規范,便于自己調試同時也便于現場人員發現問題。
            2.在多線程下的問題,確保log正確無誤,不能丟失。以前多線程下程序調試不對,檢查n久才懷疑到日志系統的問題,莫名其妙的丟了許多log記錄。
            66精品综合久久久久久久| 久久99九九国产免费看小说| 99久久久精品| 久久精品无码一区二区三区免费| 久久久久亚洲av成人无码电影 | 中文字幕亚洲综合久久2| 久久精品国产只有精品66 | 亚洲国产精品嫩草影院久久| 久久亚洲精品中文字幕| 久久久久久久久久免免费精品| 精产国品久久一二三产区区别 | 久久人与动人物a级毛片| 精品久久久久久久久久中文字幕 | 99久久99久久精品国产片| 伊人久久大香线焦AV综合影院| 国产精品美女久久久久AV福利| 无码国内精品久久人妻| 少妇熟女久久综合网色欲| 久久国产视屏| 99久久精品无码一区二区毛片 | 久久性生大片免费观看性| 国产精品久久久久影院嫩草| 亚洲va久久久噜噜噜久久 | 日韩十八禁一区二区久久| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 精品国产综合区久久久久久| 久久精品国产亚洲av高清漫画| 97视频久久久| 欧美精品九九99久久在观看| 久久有码中文字幕| 午夜肉伦伦影院久久精品免费看国产一区二区三区| 99久久婷婷国产综合亚洲| www.久久热| 2022年国产精品久久久久| 91精品国产9l久久久久| 色综合久久天天综合| 久久美女网站免费| 久久久久亚洲精品无码网址| 欧美亚洲另类久久综合婷婷| 97视频久久久| 99久久精品午夜一区二区|