Add logging.

This commit is contained in:
2025-02-24 21:24:04 -05:00
parent 9b774dc194
commit aef3b70d29
45 changed files with 51 additions and 50587 deletions

View File

@@ -10,6 +10,7 @@ using MarketData.MarketDataModel.GainLoss;
using MarketDataServer.Authorization;
using MarketData.Cache;
using MarketData.Generator;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -18,7 +19,7 @@ namespace MarketDataServer.Controllers
private ActiveGainLossGenerator gainLossGenerator=new ActiveGainLossGenerator();
public IEnumerable<GainLossSummaryItem> GetGainLoss(String token, DateTime selectedDate)
{
Console.WriteLine(String.Format("[{0:G}][GainLossController::GetGainLoss](String token, DateTime selectedDate)", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][GainLossController::GetGainLoss](String token, DateTime selectedDate)", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
LocalPriceCache.GetInstance().Refresh();
PortfolioTrades portfolioTrades = PortfolioDA.GetTrades();
@@ -51,7 +52,7 @@ namespace MarketDataServer.Controllers
}
public IEnumerable<GainLossSummaryItem> GetGainLoss(String token, DateTime selectedDate,String account)
{
Console.WriteLine(String.Format("[{0:G}][GainLossController::GetGainLoss](String token, DateTime selectedDate,String account)", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][GainLossController::GetGainLoss](String token, DateTime selectedDate,String account)", DateTime.Now));
LocalPriceCache.GetInstance().Refresh();
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
PortfolioTrades portfolioTrades = PortfolioDA.GetTrades();
@@ -86,7 +87,7 @@ namespace MarketDataServer.Controllers
// *********
public IEnumerable<GainLossSummaryItemDetail> GetGainLossWithDetail(String token, DateTime selectedDate)
{
Console.WriteLine(String.Format("[{0:G}][GainLossController::GetGainLossWithDetail](String token, DateTime selectedDate)", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][GainLossController::GetGainLossWithDetail](String token, DateTime selectedDate)", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
LocalPriceCache.GetInstance().Refresh();
PortfolioTrades portfolioTrades = PortfolioDA.GetTrades();
@@ -170,7 +171,7 @@ namespace MarketDataServer.Controllers
}
public IEnumerable<GainLossSummaryItemDetail> GetGainLossWithDetail(String token, DateTime selectedDate, String account)
{
Console.WriteLine(String.Format("[{0:G}][GainLossController::GetGainLossWithDetail](String token, DateTime selectedDate,String account)", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][GainLossController::GetGainLossWithDetail](String token, DateTime selectedDate,String account)", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
LocalPriceCache.GetInstance().Refresh();
PortfolioTrades portfolioTrades = PortfolioDA.GetTrades();
@@ -256,13 +257,12 @@ namespace MarketDataServer.Controllers
public GainLossCompoundModelCollection GetCompoundGainLoss(String token, int selectedDays, bool includeDividends)
{
Console.WriteLine(String.Format("[{0:G}][GainLossController::GetCompundGainLoss](String token, int days)", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][GainLossController::GetCompundGainLoss](String token, int days)", DateTime.Now));
if(!Authorizations.GetInstance().IsAuthorized(token)) return null;
LocalPriceCache.GetInstance().Refresh();
DividendPayments dividendPayments = null;
PortfolioTrades portfolioTrades = PortfolioDA.GetTrades();
GainLossGenerator gainLossGenerator=new GainLossGenerator();
// GainLossGeneratorCum gainLossGeneratorCum=new GainLossGeneratorCum();
if(includeDividends)dividendPayments=DividendPaymentDA.GetDividendPayments();
ActiveGainLossGenerator activeGainLossGenerator=new ActiveGainLossGenerator();
GainLossCollection gainLoss=activeGainLossGenerator.GenerateGainLoss(portfolioTrades); // gainLoss contains the gain/loss from active positions. Never includes dividends .. just positions

View File

@@ -1,12 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using MarketData.MarketDataModel;
using MarketData.DataAccess;
using MarketDataServer.Authorization;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -14,22 +13,21 @@ namespace MarketDataServer.Controllers
{
public IEnumerable<Headline> GetLatestHeadlines(String token)
{
Console.WriteLine(String.Format("[{0:G}][HeadlinesController::GetLatestHeadlines]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][HeadlinesController::GetLatestHeadlines]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return HeadlinesDA.GetLatestHeadlines();
}
public IEnumerable<String> GetHeadlineDates(String token)
{
Console.WriteLine(String.Format("[{0:G}][HeadlinesController::GetHeadlineDates]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][HeadlinesController::GetHeadlineDates]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
List<string> headlineDates = HeadlinesDA.GetHeadlineDates();
if(headlineDates.Count>0)headlineDates=headlineDates.Take(252).ToList();
return headlineDates;
// return HeadlinesDA.GetHeadlineDates();
}
public IEnumerable<Headline> GetHeadlines(String token,DateTime headlineDate)
{
Console.WriteLine(String.Format("[{0:G}][HeadlinesController::GetHeadliness(DateTime headlineDate)]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][HeadlinesController::GetHeadliness(DateTime headlineDate)]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return HeadlinesDA.GetHeadlines(headlineDate);
}

View File

@@ -1,5 +1,6 @@
using System;
using System.Web.Http;
using MarketData;
using MarketDataServer.Authorization;
namespace MarketDataServer.Controllers
@@ -9,18 +10,18 @@ namespace MarketDataServer.Controllers
public String GetToken(String user, String password)
{
Console.WriteLine(String.Format("[{0:G}][AuthorizationController::Authorize]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][AuthorizationController::Authorize]",DateTime.Now));
if(null==user)return null;
user=Authorizations.Xor(user,5);
password=Authorizations.Xor(password,5);
Console.WriteLine(String.Format("[{0:G}][Login requested for user '{1}']",DateTime.Now, user));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][Login requested for user '{1}']",DateTime.Now, user));
if(!Authorizations.GetInstance().IsValidUser(user, password))
{
Console.WriteLine(String.Format("[{0:G}][User '{1}' is not authorized]", DateTime.Now,user));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][User '{1}' is not authorized]", DateTime.Now,user));
return null;
}
String accessToken= Authorizations.GetInstance().GetAuthenticationToken();
Console.WriteLine(String.Format("[{0:G}][Access token granted for user {1} : {2}]",DateTime.Now ,user, accessToken));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][Access token granted for user {1} : {2}]",DateTime.Now ,user, accessToken));
return accessToken;
}
}

View File

@@ -1,10 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using MarketDataServer.Authorization;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -12,7 +8,7 @@ namespace MarketDataServer.Controllers
{
public bool GetPing()
{
Console.WriteLine(String.Format("[{0:G}][PingController::GetPing]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PingController::GetPing]", DateTime.Now));
return true;
}
}

View File

@@ -6,6 +6,7 @@ using MarketData.DataAccess;
using MarketDataServer.Authorization;
using MarketData.Generator;
using MarketData.Generator.GainLoss;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -17,7 +18,7 @@ namespace MarketDataServer.Controllers
{
public IEnumerable<PositionWithDescription> GetOpenPositionsWithDescription(String token)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetOpenPositionsWithDescriptionAsOf]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetOpenPositionsWithDescriptionAsOf]",DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
List<PositionWithDescription> positionsWithDescription=new List<PositionWithDescription>();
PortfolioTrades openTrades=PortfolioDA.GetOpenTrades();
@@ -33,21 +34,21 @@ namespace MarketDataServer.Controllers
public IEnumerable<String> GetAccounts(String token)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetAccounts]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetAccounts]",DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PortfolioDA.GetAccounts();
}
public IEnumerable<String> GetAccountsWithOpenTrades(String token)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetAccountsWithOpenTrades]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetAccountsWithOpenTrades]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PortfolioDA.GetAccountsWithOpenTrades();
}
public StopLimit GetStopLimit(String token,String symbol)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetStopLimit]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetStopLimit]",DateTime.Now));
if(!Authorizations.GetInstance().IsAuthorized(token)) return null;
StopLimit stopLimit=PortfolioDA.GetStopLimit(symbol);
return stopLimit;
@@ -55,7 +56,7 @@ namespace MarketDataServer.Controllers
public PortfolioTradesWithParityPrice GetPortfolioTradesWithParityPrice(String token, String symbol)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetPortfolioTradesWithParityPrice]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetPortfolioTradesWithParityPrice]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
Price zeroPrice=null;
DateTime latestPricingDate=PricingDA.GetLatestDate(symbol);

View File

@@ -8,6 +8,7 @@ using MarketData.MarketDataModel;
using MarketData.DataAccess;
using MarketDataServer.Authorization;
using MarketData.Generator;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -16,19 +17,19 @@ namespace MarketDataServer.Controllers
{
public IEnumerable<DateTime> GetAvailableMarketDates(String token,String market)
{
Console.WriteLine(String.Format("[{0:G}][PreMarketController::GetAvailableMarketDates]{1}",DateTime.Now,market));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PreMarketController::GetAvailableMarketDates]{1}",DateTime.Now,market));
if(!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PremarketDA.GetAvailableMarketDates(market);
}
public IEnumerable<String> GetAvailableMarkets(String token)
{
Console.WriteLine(String.Format("[{0:G}][PreMarketController::GetAvailableMarkets]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PreMarketController::GetAvailableMarkets]",DateTime.Now));
if(!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PremarketDA.GetDistinctMarkets();
}
public IEnumerable<PremarketElement> GetLatestPremarketData(String token,String market,DateTime marketDate)
{
Console.WriteLine(String.Format("[{0:G}][PreMarketController::GetLatestPremarketData]{1},{2}",DateTime.Now,market,marketDate.ToShortDateString()));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PreMarketController::GetLatestPremarketData]{1},{2}",DateTime.Now,market,marketDate.ToShortDateString()));
if(!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PremarketDA.GetLatestPremarketData(market,marketDate);
}

View File

@@ -1,13 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using MarketData.MarketDataModel;
using MarketData.DataAccess;
using MarketDataServer.Authorization;
using MarketData.Generator;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -18,13 +16,13 @@ namespace MarketDataServer.Controllers
{
public IEnumerable<Price> GetPrices(String token, String symbol, int days)
{
Console.WriteLine(String.Format("[{0:G}][PriceController::GetPrices]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PriceController::GetPrices]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return PricingDA.GetPrices(symbol, days);
}
public BollingerBands GetBollingerBands(String token,String symbol,int dayCount)
{
Console.WriteLine(String.Format("[{0:G}][PriceController::GetBollingerBands]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PriceController::GetBollingerBands]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
Prices prices=PricingDA.GetPrices(symbol,dayCount);
BollingerBands bollingerBands=BollingerBandGenerator.GenerateBollingerBands(prices);
@@ -32,14 +30,14 @@ namespace MarketDataServer.Controllers
}
public DateTime GetLatestPricingDate(String token)
{
Console.WriteLine(String.Format("[{0:G}][PriceController::GetLatestPricingDate]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PriceController::GetLatestPricingDate]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return DateTime.MinValue;
DateTime latestPricingDate=PricingDA.GetLatestDate();
return latestPricingDate;
}
public String GetCompanyNameForSymbol(String token, String symbol)
{
Console.WriteLine(String.Format("[{0:G}][PortfolioController::GetCompanyNameForSymbol]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PortfolioController::GetCompanyNameForSymbol]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
String companyName=PricingDA.GetNameForSymbol(symbol);
return companyName;

View File

@@ -6,12 +6,8 @@ using System.Threading.Tasks;
using System.Web.Http;
using MarketData.MarketDataModel;
using MarketData.DataAccess;
using MarketData.Utils;
using MarketData.Generator.GainLoss;
using MarketData.MarketDataModel.GainLoss;
using MarketDataServer.Authorization;
using MarketData.Cache;
using MarketData.Generator;
using MarketData;
namespace MarketDataServer.Controllers
{
@@ -21,14 +17,14 @@ namespace MarketDataServer.Controllers
public IEnumerable<String> GetDistinctPriceIndices(String token)
{
Console.WriteLine(String.Format("[{0:G}][PriceIndexController::GetDistinctPriceIndices]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PriceIndexController::GetDistinctPriceIndices]",DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return ConsumerPriceIndexDA.GetDistinctIndices();
}
public IEnumerable<PriceIndex> GetConsumerPriceIndex(String token,String indexCode)
{
Console.WriteLine(String.Format("[{0:G}][PriceIndexController::GetOpenPositionsWithDescriptionAsOf]",DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][PriceIndexController::GetOpenPositionsWithDescriptionAsOf]",DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
PriceIndices priceIndices=ConsumerPriceIndexDA.GetConsumerPriceIndex(indexCode);
return priceIndices;

View File

@@ -1,10 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using MarketData.MarketDataModel;
using MarketData;
using MarketData.DataAccess;
using MarketDataServer.Authorization;
@@ -14,7 +11,7 @@ namespace MarketDataServer.Controllers
{
public IEnumerable<String> GetWatchList(String token,String watchList)
{
Console.WriteLine(String.Format("[{0:G}][WatchListController::GetWatchList]", DateTime.Now));
MDTrace.WriteLine(LogLevel.DEBUG,String.Format("[{0:G}][WatchListController::GetWatchList]", DateTime.Now));
if (!Authorizations.GetInstance().IsAuthorized(token)) return null;
return WatchListDA.GetWatchList(watchList);
}