private void Init() { if (_inited) { return; } // 自动从本地星尘代理获取地址 if (Client == null) { try { var client = new LocalStarClient(); var inf = client.GetInfo(); if (!inf.Server.IsNullOrEmpty()) { Client = new ApiHttpClient(inf.Server); } } catch { } } var server = Client is ApiHttpClient http?http.Services.Join(",", e => e.Address) : (Client + ""); WriteLog("StarTracer.Start AppId={0} ClientId={1} Server={2}", AppId, ClientId, server); _inited = true; }
public void Info() { var client = new LocalStarClient(); var inf = client.GetInfo(); Assert.NotNull(inf); Assert.NotEmpty(inf.Server); }
static void Test5() { var rs = LocalStarClient.Scan(); foreach (var item in rs) { XTrace.WriteLine(item.ToJson()); } }
static void Test3() { //foreach (Environment.SpecialFolder item in Enum.GetValues(typeof(Environment.SpecialFolder))) //{ // var v = Environment.GetFolderPath(item); // Console.WriteLine("{0}:\t{1}", item, v); //} var client = new LocalStarClient(); client.ProbeAndInstall(null, "1.1"); }
static void Test3() { //foreach (Environment.SpecialFolder item in Enum.GetValues(typeof(Environment.SpecialFolder))) //{ // var v = Environment.GetFolderPath(item); // Console.WriteLine("{0}:\t{1}", item, v); //} var client = new LocalStarClient(); client.ProbeAndInstall(null, "1.6"); //var p = Process.GetCurrentProcess(); //var name = p.MainModule.FileName; //var str = name + Environment.NewLine + name.ToJson(); //str += Environment.NewLine + name.ToJson().ToJsonEntity<String>(); //XTrace.WriteLine(str); //File.WriteAllText("aa.txt".GetFullPath(), str); }
/// <summary>全局注册星尘性能追踪器</summary> /// <param name="server">星尘监控中心地址,为空时自动从本地探测</param> /// <returns></returns> public static StarTracer Register(String server = null) { if (server.IsNullOrEmpty()) { var set = Setting.Current; server = set.Server; } if (server.IsNullOrEmpty()) { var local = new LocalStarClient(); var inf = local.GetInfo(); server = inf?.Server; if (!server.IsNullOrEmpty()) { XTrace.WriteLine("星尘探测:{0}", server); } } if (server.IsNullOrEmpty()) { return(null); } if (Instance is StarTracer tracer && tracer.Client is ApiHttpClient) { return(tracer); } tracer = new StarTracer(server) { Log = XTrace.Log }; tracer.AttachGlobal(); return(tracer); }