public JsonResult Start(int id) { var agentManager = new AgentsManager(); var agent = agentManager.FindById(id); RunAgentCommand(string.Format("http://{0}:{1}", agent.IpAddress, agent.Port), "Run"); agentManager.ChangeStatus(id, AgentStatus.Working); return(Json(new { msg = "Готово" })); }
public JsonResult Sync(AgentSettings agent) { var agentManager = new AgentsManager(); var dbAgent = agentManager.FindById(agent.Id); var deserializer = new JavaScriptSerializer(); var config = deserializer.Deserialize <MetricsConfigContainer>(agent.JsonConfig); SendAgentSettings(config, string.Format("http://{0}:{1}", dbAgent.IpAddress, dbAgent.Port)); return(Json(new { msg = "Готово" })); }
public ActionResult Settings(int id) { //todo: get more confirmed status from agent direcly, not local database to avoid desynchronization var agentManager = new AgentsManager(); var agent = agentManager.FindById(id); if (agent == null) { ModelState.AddModelError("", string.Format("Агент с Id={0} не найден.", id)); return(View()); } var config = GetAgentConfig(string.Format("http://{0}:{1}/", agent.IpAddress, agent.Port)); var json = JsonConvert.SerializeObject(config, Formatting.Indented);;//new JavaScriptSerializer().Serialize(config, Formatting.Indented); agent.JsonConfig = json; return(View(agent)); }