private async Task RegisterApplication(CancellationToken cancellationToken) { if (!RuntimeEnvironment.ApplicationId.HasValue) { var value = await Polling(3, () => SkyWalking.RegisterApplicationAsync(_config.ApplicationCode, cancellationToken), cancellationToken); if (value.HasValue && RuntimeEnvironment is RuntimeEnvironment environment) { environment.ApplicationId = value; Logger.Information($"Registered Application[Id={environment.ApplicationId.Value}]."); } } }
private async Task Heartbeat(CancellationToken cancellationToken) { if (RuntimeEnvironment.Initialized) { try { await SkyWalking.HeartbeatAsync(RuntimeEnvironment.ApplicationInstanceId.Value, DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(), cancellationToken); } catch (Exception e) { Logger.Error($"Heartbeat error at {DateTimeOffset.UtcNow}.", e); Logger.Error("Heartbeat error.", e); } } }
private async Task RegisterApplicationInstance(CancellationToken cancellationToken) { if (RuntimeEnvironment.ApplicationId.HasValue && !RuntimeEnvironment.ApplicationInstanceId.HasValue) { var osInfoRequest = new AgentOsInfoRequest { HostName = DnsHelpers.GetHostName(), IpAddress = DnsHelpers.GetIpV4s(), OsName = PlatformInformation.GetOSName(), ProcessNo = Process.GetCurrentProcess().Id }; var value = await Polling(3, () => SkyWalking.RegisterApplicationInstanceAsync(RuntimeEnvironment.ApplicationId.Value, RuntimeEnvironment.AgentUUID, DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(), osInfoRequest, cancellationToken), cancellationToken); if (value.HasValue && RuntimeEnvironment is RuntimeEnvironment environment) { environment.ApplicationInstanceId = value; Logger.Information($"Registered Application Instance[Id={environment.ApplicationInstanceId.Value}]."); } } }