2016-04-13 37 views
4

Xamarin'de geliştirme yapması istenen bir iOS geliştiricisiyim. Xamarin’de çıktıları kaydetmek istiyorum.Xamarin'de günlüğe kaydetme ve hata raporlama stili MetroLog'da

Bunun için bir kitaplık bulmaya çalışıyorum. Bu MetroLog için bir kütüphane buldum.

Bağlantı: https://github.com/onovotny/MetroLog

Ama sorun bu level.Like her oturum için mavi renkli çıktısını alıyorum: Ben hatalar kırmızı olacağını bekliyordum enter image description here

, uyarılar olurdu Turuncu ve diğerleri yeşil ya da mavi ya da başka bir şey, ama gerekli çıktıyı istediğim şekilde alamadım. Ben şöyle kaynak kodu vardır onların repo, örnek proje çalıştırıyorum:

_log.Info("Information - We are about to do magic!"); 
_log.Warn("Warning!"); 
_log.Trace("Trace some data."); 
_log.Error("Something bad happened at {0}", DateTime.Now); 
_log.Fatal("Danger Will Robinson!"); 
  1. bu benim projeye eklendiği zaman günlük projeye yapmak gereken bazı değişiklikler var mı?

  2. Kullanım durumumu kayıt için çözebilecek başka bir kitaplık var mı?

  3. Yoksa MetroLog'dan nasıl benzer ve renkli bir seçenek elde edebilirim? Diğer seçeneklere de (açık kaynak projesi) açığım.

FAZLA BİLGİ veya GENİŞLETİLMİŞ SORU:

NSLog(@"%@ %@ started" ,[self class] ,NSStringFromSelector(_cmd)); 
NSLog(@"%@ %@ ends " ,[self class] ,NSStringFromSelector(_cmd)); 

Ben bekliyorum: iOS geliştirme alışkınım olarak ben günlük bilgileri için aşağıdaki ifadeleri kullanmak için kullanılan

herhangi bir kitaplık içermeden yukarıda gösterildiği gibi iOS için bir tür hızlı kayıt seçeneği. Bu mümkün mü? (Sınıf adı ve kodu yürüten yöntem adı dahil)

Teşekkürler.

cevap

0

MetroLog'u kullanmadım, ancak genelde bu tür kitaplıklar günlükleriniz için bir hedef/son nokta/sunucu ayarlamanızı gerektirir. Varsayılan olanı, genellikle OS tarafından sunulan (Xamarin Studio'nun yönlendireceği) temel renktir ve bu size renkli çıktı vermez.

Hızlı Günlüğü: System.Console.WriteLine verilen her dize iOS'ta NSLog arayarak biter. Bu, mscorlib.dll (SDK) bölümünün parçası olduğundan, projenizi kullanmak için eklemeniz gereken başka bir şey yoktur.

+0

Günlükleri konsolda yazdırmak ve bir sunucuya göndermek istemiyorum. Hızlı oturum açma bölümü ile ilgili olarak System.Console.WriteLine ( .GetType(). ToString()) deyimini kullanarak sınıfın adını yazdırıyorum; ama dersin adı ne olacak? Bunu nasıl alabilirim? – LearneriOS

+0

Yöntemin adı nedir? zaten myvar.GetType() 'ile (argümanlarda' ToString' çağırmaya gerek yok) sınıfınız var. – poupou

+0

Üzgünüz .. Evet ... Yöntemin adı ... kötüyüm :( – LearneriOS