aboutsummaryrefslogtreecommitdiff
path: root/src/executable/haskell/Service
diff options
context:
space:
mode:
authorJoris2019-09-09 20:42:41 +0200
committerJoris2019-09-09 20:42:41 +0200
commit88a2f0c22b523dd5246cefaeefd6c08bf9d6fba7 (patch)
treea138ceec2036313bc81b4ab2b0685914ee166c29 /src/executable/haskell/Service
parent3e2c3f014bce0a82ac8708925806be05412898f9 (diff)
downloadad-listener-88a2f0c22b523dd5246cefaeefd6c08bf9d6fba7.tar.gz
ad-listener-88a2f0c22b523dd5246cefaeefd6c08bf9d6fba7.tar.bz2
ad-listener-88a2f0c22b523dd5246cefaeefd6c08bf9d6fba7.zip
Use logging library instead of putStrLn
Diffstat (limited to 'src/executable/haskell/Service')
-rw-r--r--src/executable/haskell/Service/AdListener.hs19
-rw-r--r--src/executable/haskell/Service/MailService.hs6
2 files changed, 9 insertions, 16 deletions
diff --git a/src/executable/haskell/Service/AdListener.hs b/src/executable/haskell/Service/AdListener.hs
index 9a9fc3d..b8ae5e9 100644
--- a/src/executable/haskell/Service/AdListener.hs
+++ b/src/executable/haskell/Service/AdListener.hs
@@ -3,8 +3,8 @@ module Service.AdListener
) where
import Control.Concurrent (threadDelay)
+import qualified Control.Logging as Logging
import qualified Data.Text as T
-import qualified Data.Text.IO as T
import qualified Data.Time.LocalTime as LocalTime
import Network.Wreq.Session (Session)
@@ -23,7 +23,7 @@ start :: Conf -> Session -> IO ()
start conf session = do
ads <- fetchAds conf session
let newURLs = map Ad.url ads
- T.putStrLn "Listening to new ads…"
+ Logging.log "Listening to new ads…"
sleepUntilReady conf
listenToNewAdsWithViewedURLs conf session newURLs
@@ -35,7 +35,7 @@ listenToNewAdsWithViewedURLs conf session viewedURLs = do
if not (null newAds)
then
do
- _ <- T.putStrLn (Ad.renderConsoleAds time newAds)
+ _ <- Logging.log (Ad.renderConsoleAds time newAds)
sendMail conf newAds
else
return ()
@@ -48,19 +48,12 @@ fetchAds conf session = do
ouestFranceAds <- FetchAd.ouestFrance session (Conf.ouestFranceUrls conf)
seLogerAds <- FetchAd.seLoger session (Conf.seLogerUrls conf)
let ads = leboncoinAds ++ ouestFranceAds ++ seLogerAds
- logFetchAds ads
- return ads
-
-logFetchAds :: [Ad] -> IO ()
-logFetchAds ads = do
- now <- TimeUtils.getCurrentFormattedTime
- T.putStrLn . T.concat $
- [ "At "
- , now
- , ": fetched "
+ Logging.log . T.concat $
+ [ "Fetched "
, T.pack . show $ length ads
, " ads"
]
+ return ads
sendMail :: Conf -> [Ad] -> IO ()
sendMail conf ads =
diff --git a/src/executable/haskell/Service/MailService.hs b/src/executable/haskell/Service/MailService.hs
index cb61c47..3a5bfd0 100644
--- a/src/executable/haskell/Service/MailService.hs
+++ b/src/executable/haskell/Service/MailService.hs
@@ -4,9 +4,9 @@ module Service.MailService
import Control.Arrow (left)
import Control.Exception (SomeException, try)
+import qualified Control.Logging as Logging
import Data.Text (Text)
import qualified Data.Text as T
-import qualified Data.Text.IO as T
import qualified Data.Text.Lazy as LT
import Data.Text.Lazy.Builder (fromText, toLazyText)
import qualified Network.Mail.Mime as Mime
@@ -17,7 +17,7 @@ import qualified Model.Mail as Mail
send :: Bool -> Mail -> IO (Either Text ())
send isMock mail =
if isMock then do
- putStrLn $ "MOCK sending mail " ++ (show mail)
+ Logging.log $ T.concat [ "MOCK sending mail ", T.pack . show $ mail ]
return . Right $ ()
else do
result <-
@@ -25,7 +25,7 @@ send isMock mail =
(try (Mime.renderSendMail . getMimeMail $ mail) :: IO (Either SomeException ()))
case result of
Left err ->
- T.putStrLn . T.concat $
+ Logging.loggingLogger Logging.LevelError "" . T.concat $
[ "Error sending the following email ("
, T.pack . show $ mail
, ":\n"