public void PopulateStats(int inPackets, int outPackets, int unAckedBytes) { NetworkStats handlerNetworkStatsUpdate = OnNetworkStatsUpdate; if (handlerNetworkStatsUpdate != null) { handlerNetworkStatsUpdate(inPackets, outPackets, unAckedBytes); } }
protected void Page_Load(object sender, EventArgs e) { LinkedInService service = new LinkedInService(base.Authorization); try { NetworkStats networkStats = service.GetNetworkStatistics(); console.Text += Utilities.SerializeToXml <NetworkStats>(networkStats); } catch (LinkedInException lie) { console.Text += lie.Message; } }
public NetworkStats GetNetworkStats(int?connectionId) { byte errorAsByte; var networkStats = new NetworkStats { RecentOutgoingBandwidthInBytes = bandwidthAverager.OutgoingBandwidthInBytes, IncomingPacketCountForAllHosts = NetworkTransport.GetIncomingPacketCountForAllHosts(), IncomingPacketDropCountForAllHosts = NetworkTransport.GetIncomingPacketDropCountForAllHosts(), NetworkTimestamp = NetworkTransport.GetNetworkTimestamp(), OutgoingFullBytesCount = NetworkTransport.GetOutgoingFullBytesCount(), OutgoingMessageCount = NetworkTransport.GetOutgoingMessageCount(), OutgoingPacketCount = NetworkTransport.GetOutgoingPacketCount(), OutgoingSystemBytesCount = NetworkTransport.GetOutgoingSystemBytesCount(), OutgoingUserBytesCount = NetworkTransport.GetOutgoingUserBytesCount(), }; if (socketId.HasValue) { networkStats.IncomingMessageQueueSize = NetworkTransport.GetIncomingMessageQueueSize(socketId.Value, out errorAsByte); networkStats.OutgoingFullBytesCountForHost = NetworkTransport.GetOutgoingFullBytesCountForHost(socketId.Value, out errorAsByte); networkStats.OutgoingMessageCountForHost = NetworkTransport.GetOutgoingMessageCountForHost(socketId.Value, out errorAsByte); networkStats.OutgoingMessageQueueSize = NetworkTransport.GetOutgoingMessageQueueSize(socketId.Value, out errorAsByte); networkStats.OutgoingPacketCountForHost = NetworkTransport.GetOutgoingPacketCountForHost(socketId.Value, out errorAsByte); networkStats.OutgoingSystemBytesCountForHost = NetworkTransport.GetOutgoingSystemBytesCountForHost(socketId.Value, out errorAsByte); networkStats.OutgoingUserBytesCountForHost = NetworkTransport.GetOutgoingUserBytesCountForHost(socketId.Value, out errorAsByte); if (connectionId.HasValue) { networkStats.AckBufferCount = NetworkTransport.GetAckBufferCount(socketId.Value, connectionId.Value, out errorAsByte); networkStats.CurrentRTT = NetworkTransport.GetCurrentRTT(socketId.Value, connectionId.Value, out errorAsByte); networkStats.IncomingPacketCount = NetworkTransport.GetIncomingPacketCount(socketId.Value, connectionId.Value, out errorAsByte); networkStats.IncomingPacketLossCount = NetworkTransport.GetIncomingPacketLossCount(socketId.Value, connectionId.Value, out errorAsByte); networkStats.MaxAllowedBandwidth = NetworkTransport.GetMaxAllowedBandwidth(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingFullBytesCountForConnection = NetworkTransport.GetOutgoingFullBytesCountForConnection(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingMessageCountForConnection = NetworkTransport.GetOutgoingMessageCountForConnection(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingPacketCountForConnection = NetworkTransport.GetOutgoingPacketCountForConnection(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingPacketNetworkLossPercent = NetworkTransport.GetOutgoingPacketNetworkLossPercent(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingPacketOverflowLossPercent = NetworkTransport.GetOutgoingPacketOverflowLossPercent(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingSystemBytesCountForConnection = NetworkTransport.GetOutgoingSystemBytesCountForConnection(socketId.Value, connectionId.Value, out errorAsByte); networkStats.OutgoingUserBytesCountForConnection = NetworkTransport.GetOutgoingUserBytesCountForConnection(socketId.Value, connectionId.Value, out errorAsByte); } } return(networkStats); }
private void btnStartAll_Click(object sender, EventArgs e) { var st = new NetworkStats(); st.NewEvent += this.OnNewPacket; //this.counter = new SpecificAddressCounter(IPAddress.Parse("89.108.91.180")); this.counter = new AllTrafficCounter(); st.AddCounter(this.counter); st.Start(); this.session = st; //******** var events = NetworkStats.TransportLayerStats; events.NewEvent += this.OnNewPacket; this.counter2 = new AllTrafficCounter(); //this.counter2 = new SpecificAddressCounter(IPAddress.Parse("89.108.91.180")); events.AddCounter(this.counter2); events.Start(); this.session2 = events; }
public List <AppProcess> GetAppProcessesByTime(string time = "year") { try { #region AppStatistics PackageManager packageManager = context.PackageManager; AppOpsManager appOps = (AppOpsManager)context.GetSystemService(Context.AppOpsService); var mode = appOps.CheckOpNoThrow(AppOpsManager.OpstrGetUsageStats, Android.OS.Process.MyUid(), context.PackageName); if (mode == AppOpsManager.ModeAllowed) { UsageStatsManager mUsageStatsManager = (UsageStatsManager)context.GetSystemService(Context.UsageStatsService); NetworkStatsManager networkStatsManager = (NetworkStatsManager)context.GetSystemService(Context.NetworkStatsService); Calendar calendar = Calendar.Instance; long endMillis = calendar.TimeInMillis; long startMillis; if (time == "day") { calendar.Add(Calendar.DayOfWeekInMonth, -1); } else if (time == "month") { calendar.Add(Calendar.Month, -1); } else if (time == "week") { calendar.Add(Calendar.WeekOfMonth, -1); } else { calendar.Add(Calendar.Year, -1); } startMillis = calendar.TimeInMillis; IDictionary <String, UsageStats> lUsageStatsMap = mUsageStatsManager.QueryAndAggregateUsageStats(startMillis, endMillis); foreach (var usageStats in lUsageStatsMap) { long totalTimeInMillis = 0; long totalTimeInSeconds = 0; string packageName = ""; string appName = ""; long receivedWifi = 0; long sentWifi = 0; long receivedMobile = 0; long sentMobile = 0; DateTime lastUsage = new DateTime(); packageName = usageStats.Key; totalTimeInMillis = usageStats.Value.TotalTimeInForeground; totalTimeInSeconds = totalTimeInMillis / 1000 / 60; appName = AppNameByPackageName(packageName); ApplicationInfo info = packageManager.GetApplicationInfo(packageName, 0); if (info != null) { int uid = info.Uid; NetworkStats networkStatsWifi = networkStatsManager.QueryDetailsForUid(ConnectivityType.Wifi, null, startMillis, endMillis, uid); NetworkStats.Bucket bucketWifi = new NetworkStats.Bucket(); while (networkStatsWifi.HasNextBucket) { networkStatsWifi.GetNextBucket(bucketWifi); receivedWifi += bucketWifi.RxBytes; sentWifi += bucketWifi.TxBytes; } NetworkStats networkStatsMobile = networkStatsManager.QueryDetailsForUid(ConnectivityType.Mobile, null, startMillis, endMillis, uid); NetworkStats.Bucket bucketMobile = new NetworkStats.Bucket(); while (networkStatsMobile.HasNextBucket) { networkStatsMobile.GetNextBucket(bucketMobile); receivedMobile += bucketMobile.RxBytes; sentMobile += bucketMobile.TxBytes; } } appProcesses.Add(new AppProcess { PackageName = packageName, TimeOfAppUsageInSeconds = totalTimeInSeconds, AppName = appName, NetworkUsageTotal = receivedWifi + sentWifi + receivedMobile + sentMobile, NetworkUsageSend = sentWifi + sentMobile, NetworkUsageReceived = receivedWifi + receivedMobile }); } } else { // When needed permission var activity = (MainActivity)Forms.Context; activity.StartActivityForResult(new Intent(Settings.ActionUsageAccessSettings), MY_PERMISSIONS_REQUEST_PACKAGE_USAGE_STATS); } } catch (Exception ex) { throw new Exception(ex.Message); } #endregion return(appProcesses); }
public ToolbarView() { DataContext = new NetworkStats(); InitializeComponent(); }