差分

ナビゲーションに移動 検索に移動

Xamarin.MacでNLogを使う

1,758 バイト追加, 2019年5月22日 (水) 05:13
Administrator がページ「Xamarin.Mac/NLogを使う」を「Xamarin.MacでNLogを使う」に移動しました
[[あなるXamarin.Mac]]とは、でも[[C Sharp|C#NLog]]における[[例外]]のひとつである [[ArgumentNullException]] の省略表記である。「[[あぬる]]」の発音違い・方言のようなものであり、技術的な詳細は「[[あぬる]]」のページを参照のこと。を使えると捗る。
== 概要 実装1==「あなる」という発音および表記は、「[[nullXamarin.Mac]]」を「なる」「なぁる」と発音する英語圏向けである。日本では「でも[[NLog]]はなんら問題なく使用できる。[[nullNuGet]]」を「から一発[[ぬるインストール]]」と発音するのが一般的であるため「あなる」ではなく「である。試してはいないが[[あぬるMonoMac]]」と発音されることが多い。つまり、アナルもアヌルも同じ意味合いである。でも同じだと思う。
== 注意 ==肛門を意味する「anal(アナル)」とは関係ない。ただし[[ファイル]]に出力する場合に注意が必要で、[[Mac OS X]]ではあらゆる[[ファイル]]は[[アプリ]]の外部に保存する必要があるため、NLog.configファイルの設定例でよく見かける「basedir変数」以下に書き込む設定は使えない。
===ファイルに出力するNLog.configの設定例===そこで以下の例では[[*Mac OS X]]」という記号は[[アスタリスク]]である。では定番の「~/Library/Logs/」以下に出力してみた。
<source lang="xml"><?xml version= 関連項目 "1.0" encoding="utf-8" ?><nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"* [[ぬるり]] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"* [[ぬるぽ]] xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"* [[C Sharp|C#]] autoReload="true"* [[例外]] throwExceptions="false"* [[ArgumentNullException クラス (System)]]* [[契約による設計]]* [[コードコントラクト]] internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log" >
<variable name="appname" value= 参考文献 ==<references"monobook"/>
<targets> <target xsi:type="File" name= 外部リンク "logfile" fileName="${specialfolder:folder=MyDocuments}/Library/Logs/${appname}/${shortdate}.log" layout="${longdate} ${uppercase:${level}} ${message}" />  <target xsi:type="Console" name="console" />  </targets>  <rules> <logger name="*" minlevel="Trace" writeTo="logfile" /> <logger name="*" minlevel="Info" writeTo="console" /> </rules></nlog></source>NLogに設定するパスは[[絶対パス]]なので、ホームディレクトリのパスの取得は「[[MonoMac/特殊ディレクトリのパスを取得する]]」を用いてMyDocumentsを指定することで取得した。 また、NLog.config中でアプリ名を動的に取得する方法がわからなかったので、この例では自前でappname変数を用意している。 ===備考===NLog.configは初期状態でビルド時にコピーされない設定になっていると思うので修正するのを忘れないこと。NLog.configファイルのプロパティの「出力ディレクトリにコピー」の値を「新しい場合のみコピー」または「常にコピー」に設定する。 ===不具合===これは2015年8月3日の情報です。[[Xamarin.Mac]]において「Debugビルド」を行うとアプリ内(***.app内)のMonoBundleディレクトリにNLog.configファイルが生成(コピー)されるが、「Releaseビルド」では生成されないようだ。たぶん[[不具合]]だと思う。 ==関連項目==*[[MonoMac/特殊ディレクトリのパスを取得する]] ==参考文献=={{reflist}}
{{stub}}
 
[[category:Xamarin.Mac]]
[[category:MonoMac]]
匿名利用者

案内メニュー