added trace logging to the controller classes.

changed nlog config file to output trace logging.
#9
This commit is contained in:
Chris.Watts90@outlook.com 2017-02-13 14:07:09 +00:00
parent 923e4473a9
commit 00a6894197
5 changed files with 34 additions and 17 deletions

View File

@ -6,6 +6,6 @@
<target name="viewer" xsi:type="Chainsaw" address="udp://127.0.0.1:4000" />
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="viewer" />
<logger name="*" minlevel="Trace" writeTo="viewer" />
</rules>
</nlog>

View File

@ -9,11 +9,13 @@ namespace WindowsDataCenter
public class CardsController : ApiController
{
private readonly IRepository _repo;
public CardsController(IRepository repo)
private readonly ILogger _logger;
public CardsController(IRepository repo, ILogger logger)
{
if(repo == null) throw new ArgumentNullException(nameof(repo));
_repo = repo;
if(logger == null) throw new ArgumentNullException(nameof(logger));
_logger = logger;
}
[HttpGet]
@ -22,7 +24,7 @@ namespace WindowsDataCenter
public IHttpActionResult GetUnassignedCards()
{
var unassignedCards = _repo.GetUnassignedIdentifierList();
_logger.Trace("Call to GetUnassignedCards, returning {0} items", unassignedCards.data.Count);
return Ok(unassignedCards);
}
}

View File

@ -13,14 +13,16 @@ namespace WindowsDataCenter
public class SwipeDataController : ApiController
{
private readonly IRepository _repo;
private readonly ILogger _logger;
/// <summary>
///
/// </summary>
/// <param name="repo"></param>
public SwipeDataController(IRepository repo)
public SwipeDataController(IRepository repo, ILogger logger)
{
if(repo == null) throw new ArgumentNullException();
if(repo == null) throw new ArgumentNullException(nameof(repo));
_repo = repo;
if(logger == null) throw new ArgumentNullException(nameof(logger));
}
/// <summary>
@ -34,6 +36,7 @@ namespace WindowsDataCenter
{
int logId;
_repo.LogEventTime(new Identifier {UniqueId = cData.CardUId}, out logId);
_logger.Trace("Received new \"Swipe Event\" for UId: {0} at {1}", cData.CardUId, DateTime.UtcNow);
return
ResponseMessage(new HttpResponseMessage(HttpStatusCode.OK)
{

View File

@ -13,19 +13,24 @@ namespace WindowsDataCenter
public class TimelogController: ApiController
{
private readonly IRepository _repo;
public TimelogController(IRepository repo)
private readonly ILogger _logger;
public TimelogController(IRepository repo, ILogger logger)
{
if (repo == null)
{
throw new ArgumentNullException(nameof(repo));
}
_repo = repo;
if(logger == null) throw new ArgumentNullException(nameof(logger));
_logger = logger;
}
[Route("")]
[CacheControl(MaxAge = 0)]
public IHttpActionResult GetTimeLogs([FromUri]int userId, [FromUri] DateTime? selectedDate = null)
{
_logger.Trace("Getting Time Logs for user with id: {0}, for the calendar week that the date {1} belongs to.", userId, selectedDate);
TimeLogList logList;
if (selectedDate == null)
{
@ -36,6 +41,8 @@ namespace WindowsDataCenter
logList = _repo.GetTimeLogs(userId, selectedDate.Value);
}
_logger.Trace("Got Time logs for the user: {0}, returned {1} records", userId, logList.TimeLogCount);
var msg = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StringContent(JsonConvert.SerializeObject(logList), Encoding.UTF8, "application/json")

View File

@ -12,11 +12,13 @@ namespace WindowsDataCenter
public class UsersController : ApiController
{
private readonly IRepository _repo;
public UsersController(IRepository repo)
private readonly ILogger _logger;
public UsersController(IRepository repo, ILogger logger)
{
if(repo == null) { throw new ArgumentNullException(nameof(repo));}
_repo = repo;
if(logger == null) { throw new ArgumentNullException(nameof(logger));}
_logger = logger;
}
[HttpGet]
@ -24,10 +26,11 @@ namespace WindowsDataCenter
[CacheControl(MaxAge = 0)]
public IHttpActionResult GetUsers([FromUri] string query = "",[FromUri] int pageSize = -1, [FromUri] int pageNumber =-1)
{
UserList userList = new UserList();
_logger.Trace("GetUsers called with arguments >> query: {0}, pageSize: {1}, pageNumber: {2}", query, pageSize, pageNumber);
pageNumber = pageNumber == -1 ? 1 : pageNumber;
pageSize = pageSize == -1 ? 1 : pageSize;
userList = query == string.Empty ? _repo.GetUsers(pageNumber, pageSize) : _repo.Search(query);
var userList = query == string.Empty ? _repo.GetUsers(pageNumber, pageSize) : _repo.Search(query);
_logger.Trace("Got UserList from Repository, UserCount: {0}", userList.UserCount);
if (query != string.Empty)
{
userList.Query = query;
@ -40,6 +43,7 @@ namespace WindowsDataCenter
userList.PageNumber = pageNumber;
userList.PageSize = pageSize;
_logger.Trace("Returning UserList from GetUsers.");
var msg = Request.CreateResponse(HttpStatusCode.OK, userList);
return ResponseMessage(msg);
}
@ -49,8 +53,11 @@ namespace WindowsDataCenter
[CacheControl(MaxAge = 0)]
public IHttpActionResult GetUserDetails(int id)
{
_logger.Trace("Getting details for user id: {0}", id);
var ret = _repo.GetUser(id);
_logger.Trace("Got details for user id: {0}, name: {1}", id, ret.FirstName);
var resp = Request.CreateResponse(HttpStatusCode.OK, ret);
return ResponseMessage(resp);
}
@ -68,18 +75,16 @@ namespace WindowsDataCenter
[HttpPost]
[Route("edit")]
[CacheControl(MaxAge=0)]
[CacheControl(MaxAge = 0)]
public IHttpActionResult EditUser([FromBody] User user)
{
_logger.Trace("Editing user, id: {0}", user.UserId);
int userId;
_repo.UpdateUser(user, out userId);
_logger.Trace("Edited details for user id: {0}", user.UserId);
var resp = Request.CreateResponse(HttpStatusCode.OK, userId);
return ResponseMessage(resp);
//ResponseMessage(new HttpResponseMessage(HttpStatusCode.Created)
//{
// //TODO: return ID
// Content = new StringContent("TODO:return UserID")
//});
}
}
}