Esempio n. 1
0
        public static void InsertStatistic(string appName, string plugin, string command, string version, string doc)
        {
            Task.Run(() =>
            {
                try
                {
                    var db = new PluginStatisticDbContext();
                    db.Configuration.LazyLoadingEnabled       = false;
                    db.Configuration.AutoDetectChangesEnabled = false;
                    db.Configuration.ValidateOnSaveEnabled    = false;
                    db.C_PluginStatistics.Add(new C_PluginStatistic
                    {
                        Application = appName,
                        Plugin      = plugin ?? string.Empty,
                        Command     = command ?? string.Empty,
                        Build       = version.Truncate(40) ?? string.Empty,
                        Doc         = doc.Truncate(500) ?? string.Empty,
                        UserName    = Environment.UserName,
                        DateStart   = DateTime.Now,
                        DocName     = Path.GetFileName(doc)
                    });

                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    Logger.Log.Error(ex, $"PluginStatisticsHelper Insert. appName={appName}, plugin={plugin}, command={command}, version={version}, doc={doc}, docName={Path.GetFileName(doc)}");
                }

                if (!appName.EndsWith(" Run") && !appName.EndsWith(" Update"))
                {
                    YandexMetrica.ReportEvent($"{plugin} {command}");
                }
            });
        }
 static PluginStatisticsHelper()
 {
     _db = new PluginStatisticDbContext();
     _db.Configuration.LazyLoadingEnabled       = false;
     _db.Configuration.AutoDetectChangesEnabled = false;
     _db.Configuration.ValidateOnSaveEnabled    = false;
 }
Esempio n. 3
0
        public static void InsertStatistic(string appName, string?plugin, string?command, string?version, string?doc)
        {
            if (_isInsertStatisticError || Environment.UserName.EqualsIgnoreCase("chuchkalovaav"))
            {
                return;
            }

            try
            {
                var client = new HttpClient();
                var json   = "{" +
                             "\"source\": \"cad\"," +
                             $"\"UserName\": \"{Environment.UserName}\"," +
                             $"\"MachineName\": \"{Environment.MachineName}\"," +
                             $"\"Message\": \"{command}\"," +
                             $"\"Group\": \"{General.UserGroup}\"," +
                             $"\"Application\": \"{appName}\"," +
                             $"\"Plugin\": \"{plugin}\"," +
                             $"\"Build\": \"{version}\"," +
                             $"\"Doc\": \"{GetPath(doc)}\"" +
                             "}";
                var content = new StringContent(json, Encoding.UTF8, "application/json");
                client.PostAsync("https://bim.pik.ru/robotlogs/cad", content).ConfigureAwait(false);
            }
            catch (Exception ex)
            {
                ex.LogError();
            }

            Task.Run(() =>
            {
                try
                {
                    var db = new PluginStatisticDbContext();
                    db.Configuration.LazyLoadingEnabled       = false;
                    db.Configuration.AutoDetectChangesEnabled = false;
                    db.Configuration.ValidateOnSaveEnabled    = false;
                    db.C_PluginStatistics.Add(new C_PluginStatistic
                    {
                        Application = appName,
                        Plugin      = plugin ?? string.Empty,
                        Command     = command ?? string.Empty,
                        Build       = version?.Truncate(40) ?? string.Empty,
                        Doc         = doc?.Truncate(500) ?? string.Empty,
                        UserName    = Environment.UserName,
                        DateStart   = DateTime.Now,
                        DocName     = Path.GetFileName(doc),
                    });

                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    _isInsertStatisticError = true;
                    Logger.Log.Error(ex, $"PluginStatisticsHelper Insert. appName={appName}, plugin={plugin}, command={command}, version={version}, doc={doc}, docName={Path.GetFileName(doc)}");
                }
            });
        }
Esempio n. 4
0
        public static void InsertStatistic(string appName, string?plugin, string?command, string?version, string?doc)
        {
            if (_isInsertStatisticError || Environment.UserName.EqualsIgnoreCase("chuchkalovaav"))
            {
                return;
            }

            Task.Run(() =>
            {
                try
                {
                    var db = new PluginStatisticDbContext();
                    db.Configuration.LazyLoadingEnabled       = false;
                    db.Configuration.AutoDetectChangesEnabled = false;
                    db.Configuration.ValidateOnSaveEnabled    = false;
                    db.C_PluginStatistics.Add(new C_PluginStatistic
                    {
                        Application = appName,
                        Plugin      = plugin ?? string.Empty,
                        Command     = command ?? string.Empty,
                        Build       = version?.Truncate(40) ?? string.Empty,
                        Doc         = doc?.Truncate(500) ?? string.Empty,
                        UserName    = Environment.UserName,
                        DateStart   = DateTime.Now,
                        DocName     = Path.GetFileName(doc),
                    });

                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    _isInsertStatisticError = true;
                    Logger.Log.Error(ex, $"PluginStatisticsHelper Insert. appName={appName}, plugin={plugin}, command={command}, version={version}, doc={doc}, docName={Path.GetFileName(doc)}");
                }
            });
        }