protected override void GetMetadata(Dictionary<string, object> metadata)
{
#if !PCL
metadata[MetadataKeys.System.Environment.OsPlatform] = Environment.OSVersion.Platform;
metadata[MetadataKeys.System.Environment.OsVersion] = Environment.OSVersion.VersionString;
metadata[MetadataKeys.System.Environment.ServicePack] = Environment.OSVersion.ServicePack;
metadata[MetadataKeys.System.Environment.RuntimeVersion] = Environment.Version.ToString();
metadata[MetadataKeys.System.Environment.MachineName] = Environment.MachineName;
metadata[MetadataKeys.System.Environment.HostName] = Dns.GetHostName();
#endif
metadata[MetadataKeys.System.Environment.ProcessorCount] = Environment.ProcessorCount;
foreach (var config in Configuration) {
var key = MetadataKeys.System.Configuration.KeyFormat.Replace("{key}", config.Key);
metadata[key] = config.Value;
}
foreach (var module in Features) {
metadata[String.Format("[module]:{0}", module.FeatureName)] = module.Version;
}
}