ååã®èšäºã§ã¯ãYandex Metricsããã®èªåããŒã¿ã¢ããããŒãã®èšå®äŸãæ€èšããŸããã ããã«ããã宿çãªã¢ã³ããŒãã容æã«ãªããŸãããã¡ãœããã¯åèªåã§ããã¹ã¯ãªãããå®è¡ããã¢ã³ããŒãã®çµæãèªåã«ã³ããŒããŠãåŒãç¶ãèšèšããå¿
èŠããããŸãã ããã»ã¹ãå®å
šã«èªååããæ¹æ³ãèŠãŠã¿ãŸãããã ããšãã°ãåºåã·ã¹ãã Adfoxã®ããŒã¿ã¢ããããŒãã䜿çšããŸãã
Adfoxã«ã¯æ¢è£œã®ã¬ããŒãã倿°ãããŸãããã¬ããŒãèŠä»¶ã®åçŽãªè€éãã§ãåé¡ãçºçããŸãã éåžžã®ã¬ããŒããèšå®ãããªãã·ã§ã³ããããŸãããã»ãšãã©ã®å Žåãã¢ããããŒãã®çµã¿åãããèªåã§èšå®ããå¿
èŠããããŸãã
ãã®èšäºã§ã¯ãã¢ã«ãŠã³ãã§äœ¿çšå¯èœãªãã¹ãŠã®ãããŒã®CTRãã¢ã³ããŒãããã¹ã¯ãªãããäœæããæ¹æ³ã瀺ããŸãïŒãããæåã§è¡ãã®ã¯æéçã«éçŸå®çã§ãïŒã ãããåçŽãªHTMLããŒãžãšããŠãã£ãŒãã«è¡šç€ºããæ¹æ³ãšåæ§ã«ã ã€ãŸãããã¹ãŠã®ãã£ã³ããŒã³ãšãã©ã€ããé æ¬¡ç¢ºèªãããã¹ãŠã®ãããŒã®ã€ã³ãã¬ãã·ã§ã³ãšã¯ãªãã¯ãååŸããŠãCTRã®ã°ã©ããæç»ããŸãã åã®èšäºãšåæ§ã«ãAmazon Web Servicesã€ã³ã¹ã¿ã³ã¹ã§äœæ¥ããããããŠãããŒãµã«ã§æãéèŠãªããšã¯ç¡æã§ãã PHPã§ããŒã¿ãã¢ã³ããŒãããHighchartsã§ã°ã©ãã£ãã¯ãæç»ããŸãã ã³ãŒãã¯ãæ¹åãªãã§ããŒã¿ãã¢ããããŒãããã³åŠçããæãç°¡åãªæ¹æ³ãå®è£
ããŸãã ãã®çµæãæšæ¥ã®æ¯æ¥æŽæ°ãããæ¯æ¥ã®ããŒãžãååŸããŸãã

AWSã§ã¢ã«ãŠã³ããäœæããããšããå§ããŸãïŒãŸã ãªãå ŽåïŒã ãã®æé ã®è©³çްã«ã€ããŠã¯ãããã¥ã¡ã³ã
docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-ug.pdf ïŒéå§åïŒã§èª¬æããŠããŸãã æ¬¡ã«ãããã¥ãŒããªã¢ã«ïŒAmazon Linuxã«LAMP WebãµãŒããŒãã€ã³ã¹ããŒã«ãããã®ç« ã®åãããã¥ã¡ã³ãã§èª¬æãããŠããæ®µéãå®è¡ããŸãïŒããŒã¿ãã¢ããããŒãããã³ä¿åããããã«å¿
èŠãªPHPãšMySQLãã€ã³ã¹ããŒã«ããŸãïŒå°æ¥ãMySQLã§ã®äœæ¥ã¯ããã¹ããã¡ã€ã«ãããåªããŠããŸãïŒã ãã¡ãããçµã¿èŸŒã¿ã®Pythonã䜿çšããŠãããè¡ããªããŠãå®è¡ã§ããŸãã Amazon Linuxã€ã³ã¹ã¿ã³ã¹ãèµ·åããŸãïŒè©³çްã«ã€ããŠã¯ãUbuntu Serverã€ã³ã¹ã¿ã³ã¹ãéžæãã
ååã®èšäºãåç
§ããŠãã ããïŒã ããã§ã¯ãUbuntuã§ã¯ãªãLinuxãå¿
èŠã§ãã Ubuntuã§LAMP WebãµãŒããŒãå®è¡ããã«ã¯ãããã¥ã¡ã³ã
help.ubuntu.com/community/ApacheMySQLPHPãåç
§ããŠãã ããã ãã®ãããAmazon Linuxã€ã³ã¹ã¿ã³ã¹ãéžæããã»ãã¥ãªãã£ã°ã«ãŒãããã§ãã¯ããŠããã©ã€ããŒãããŒãããããšã確èªããŸãã æ°ååŸãã€ã³ã¹ã¿ã³ã¹ã®ãããªãã¯DNSãååŸããPuttyïŒWindowsã®å ŽåïŒãŸãã¯MACã®ã¿ãŒããã«ãä»ããŠã€ã³ã¹ã¿ã³ã¹ã«æ¥ç¶ããŸãã

LAMP WebãµãŒããŒãé
眮ããŸãã ææ°ã®æŽæ°ãããããšã確èªããã³ãã³ããå®è¡ããŸãã
$ sudo yum update -y
ç§ãã¡ã«é©ããPHPããŒãžã§ã³ãé
眮ããŸãã
$ sudo yum install -y httpd24 php56 mysql55-server php56-mysqlnd
Apache WebãµãŒããŒãèµ·åããŸãã
$ sudo service httpd start
ã·ã¹ãã ãèµ·åãããã³ã«Apache WebãµãŒããŒãèµ·åããããã«ããŸãã
$ sudo chkconfig httpd on
ãã¹ãŠãæåããããšããã¹ãããŸããã€ã³ã¹ã¿ã³ã¹ã®ãããªãã¯DNSãã©ãŠã¶ãŒã«ã³ããŒããŠè²Œãä»ããæ¬¡ã®ããŒãžãååŸããŸãã

ããã§ãã«ãŒããã£ã¬ã¯ããª/ var / www /ã¯ã«ãŒããŠãŒã¶ãŒã«ãã£ãŠãææããããŸãã ããã§ec2-userãŠãŒã¶ãŒã¢ã¯ã»ã¹ãäœæããŸãããã
ã°ã«ãŒããwwwããäœæããŸãã
$ sudo groupadd www
ãŠãŒã¶ãŒec2-userãwwwã°ã«ãŒãã«è¿œå ããŸãã
$ sudo usermod -a -G www ec2-user
倿Žãæå¹ã«ããã«ã¯ãPuttyãŸãã¯TerminalïŒexitã³ãã³ãïŒãéããŠãã€ã³ã¹ã¿ã³ã¹ã«å床æ¥ç¶ããŸãã ãŠãŒã¶ãŒec2-userãwwwã°ã«ãŒãã«ç»é²ãããŠããããšã確èªããŸãã
$ã°ã«ãŒã
ec2-userãã€ãŒã«www
/ var / wwwãã©ã«ããŒã®ææè
ã倿ŽããŸãã
$ sudo chown -R rootïŒwww / var / www
ãŠãŒã¶ãŒec2-userããã³wwwã°ã«ãŒãã®ãã®ä»ã®ãŠãŒã¶ãŒã«/ var / wwwãã©ã«ããŒã倿Žããæ©èœã远å ããŸãã
$ sudo chmod 2775 / var / www
$ find / var / www -type d -exec sudo chmod 2775 {} +
$ find / var / www -type f -exec sudo chmod 0664 {} +
/ var / wwwãã£ã¬ã¯ããªã«PHPãã¡ã€ã«ãäœæã§ããããšããã¹ãããŸãã ãããè¡ãã«ã¯ãphpinfo.phpãã¡ã€ã«ãäœæããŠ<ïŒPhp phpinfoïŒïŒãæžã蟌ã¿ãŸãã ïŒ>ïŒ
$ echo "<ïŒphp phpinfoïŒïŒ;ïŒ>"> /var/www/html/phpinfo.php
ããã§ãããã©ãŠã¶ã®ã¢ãã¬ã¹ããŒã«ã€ã³ã¹ã¿ã³ã¹ã®ãããªãã¯DNSãã³ããŒããã/ phpinfo.phpãã远å ããŸãã PHPã®èšå®ãå«ã次ã®ããŒãžãååŸããå¿
èŠããããŸãã

ã»ãã¥ãªãã£äžã®çç±ãããäœæããphpinfo.phpãã¡ã€ã«ãåé€ããŸãã
$ rm /var/www/html/phpinfo.php
çŽ æŽããããAdfoxããããŒã¿ãã¢ããããŒãããæºåãã§ããŸããïŒ
Adfoxã®çµ±èšæ
å ±ãã¢ã³ããŒãããAdfox APIã®ããã¥ã¡ã³ãã¯ã
help.adfox.ru ïŒããŒãžã®äžéšã«ããããŠã³ããŒããªã³ã¯ïŒã«ãããŸãã äžè¬ã«ãããã¥ã¡ã³ãã¯ããŸãã³ã³ãã€ã«ãããŠããªããããäžè¬çãªå Žåãæ¬¡ã®ã«ãŒã«ã䜿çšã§ããŸãïŒAPIã§ã¬ããŒãã®ãªã³ã¯ãååŸããå¿
èŠãããå Žåã¯ããã©ãŠã¶ãŒãããªã³ã¯ãã³ããŒãããŠãŒã¶ãŒåãšãã¹ã¯ãŒã+ 'ïŒisXML = 1'ã䜿çšããŠåœ¢åŒã®ããŒã¿ãåä¿¡ããŸãXML æ€çŽ¢æ©èœãŸãã¯ãã£ã³ããŒã³èšå®ãå¿
èŠãªå Žåã¯ãAPIããã¥ã¡ã³ãã確èªããå¿
èŠããããŸãã
äžè¬ã«ãAdfox APIãžã®ãªã¯ãšã¹ãã«ã¯ããã°ã€ã³æïŒãã°ã€ã³æïŒãšãã¹ã¯ãŒãããã®SHA-256ããã·ã¥ã䌎ããŸãã æ€çŽ¢ã¯ãšãªãsha-256 onlineãã«å¯ŸããŠãä»»æã®ãµã€ãã§ãã¹ã¯ãŒãããã·ã¥ãçæã§ããŸãã ããšãã°ããã¡ãïŒ
www.xorbin.com/tools/sha256-hash-calculatorãã¹ã¯ãŒããã12345ãã®å ŽåãAPIã«ã¢ã¯ã»ã¹ããã«ã¯ãã5994471abb01112afcc18159f6cc74b4f511b99806da59b3caf5a9c173cacfc5ããšããå€ããã¹ã¯ãŒããšããŠäœ¿çšããŸãã

ã¢ã«ãŽãªãºã ã¯2ã€ã®ã¹ãããã§æ§æãããŸãã
ã¹ããã1 å©çšå¯èœãªãã¹ãŠã®ãã£ã³ããŒã³ã®ãªã¹ããååŸããŸãã
å©çšå¯èœãªãã£ã³ããŒã³ã®ãªã¹ããååŸããŸãã ãã£ã³ããŒã³ã倿°ããå Žåã¯ãããšãã°8æ1æ¥ããéå§ããããã£ã³ããŒã³ã«å¶éã§ããŸãã
login.adfox.ru/API.php?object=account&action=list&actionObject=superCampaign&dateAddedFrom=2015-08-01&loginAccount=login&loginPassword=password-sha-256&isXML=1ãã©ãŠã¶ã§ã次ã®XMLãã¡ã€ã«ãååŸããŸãã
ã¹ããã2 åãã£ã³ããŒã³ã«ã¯ãååïŒã¿ã°ïŒãšIDïŒïŒããããŸãã åIDã«ã€ããŠããããŒã¬ããŒããååŸããŸãïŒããšãã°ãID = 55555ã®ãã£ã³ããŒã³ã®å ŽåïŒïŒ
login.adfox.ru/commonReportsOutputForm.php?period=&startDate=start-date&endDate=end-date&criteria=superCampaignBanner&isNewSearch=on&objectName=superCampaign&objectID=55&loginloginloginloginloginloginloginloginloginloginloginloginloginloginloginloginloginlogin
ãã®æé ãæ¯æ¥å®è¡ããããŒã¿ããã¡ã€ã«ã«æžã蟌ãã¹ã¯ãªãããäœæããŸãããã æãç°¡åãªæ¹æ³ã¯ã/ var / www / htmlãã©ã«ããŒã«ç§»åããããã«adfoxãã©ã«ããŒãäœæããæ¬¡ã®ã³ãŒãã§daily.phpãã¡ã€ã«ãäœæããããšã§ãã
AdfoxããŒã¿ã¢ããããŒãã³ãŒã æ°æ¥ïŒããšãã°9æ1ã4æ¥ïŒã«ã³ãŒããå®è¡ããstartDateãšendDateã®æ¥ä»ã01.09.15ãã09.09.15ã«çœ®ãæããŸãã ãã®çµæã9æ1æ¥ãã4æ¥ãŸã§ã®æ¯æ¥ã®åãããŒã®çµ±èšã¯ãdata.txtãã¡ã€ã«ã«èç©ãããŸãã
ããŒã¿ãã°ã©ãã«è¡šç€ºããã¹ã¯ãªãããèªåçã«æŽæ°ããããã«æ®ããŸãã ã°ã©ããæç»ããã«ã¯ã
www.highcharts.com / demo / line-basicã䜿çšã
ãŸã ã ã©ã€ãã©ãªãã€ã³ã¹ã¿ã³ã¹ã«ããŠã³ããŒãããããHighcharts Webãµã€ãã®ã©ã€ãã©ãªã«ã¢ã¯ã»ã¹ã§ããŸãã ãã®äŸã§ã¯ã2çªç®ã®ãªãã·ã§ã³ã䜿çšããŸãã ãã¹ãŠã®äŸã®ã³ãŒãã¯ãã°ã©ãã®äžã®[JSFIDDLEã§ç·šé]ãã¿ã³ãã¯ãªãã¯ããŠãwww.highcharts.com / demo / line-basicã§è¡šç€ºã§ããŸãã
ã©ã€ãã©ãªãæ£ããæ©èœããã«ã¯ã
jQueryãå¿
èŠã§ãã
ãµã€ãããããŸãã¯ã³ã³ãœãŒã«ã§çŽæ¥/ var / www / html / adfoxãã©ã«ããŒã«ããŠã³ããŒãããŸãã
$ wget
code.jquery.com/jquery-1.11.3.jsreport.htmlãã¡ã€ã«ã«ãã£ãŒãã³ãŒãã远å ããŸãã
ã¬ã³ããªã³ã°ä»ãã®HTMLããŒãžã³ãŒã <html> <head> <script src="jquery-1.11.3.js"></script> <script src="http://code.highcharts.com/highcharts.js"></script> <script src="http://code.highcharts.com/modules/exporting.js"></script> </head> <body> <script> </script> <div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div> </body> </html>
ãã¡ã€ã«ãadfoxãã©ã«ããŒã«ããããšãå¿ããã«ãreport.htmlããŒãžããã©ãŠã¶ãŒã§éããŸãã

ã¹ã¯ãªãããæ¯æ¥æŽæ°ããããã«ããŸãïŒããšãã°ãã€ã³ã¹ã¿ã³ã¹ã®ã·ã¹ãã æéã«å¿ããŠ8:00ã«ãã³ã³ãœãŒã«ã®dateã³ãã³ãã§ç¢ºèªã§ããŸãïŒã ãããè¡ãã«ã¯ãã³ã³ãœãŒã«ã§ä»¥äžãå®è¡ããŸãã
$ crontab -e
ããã©ã«ãã§ã¯ãvimãšãã£ã¿ãŒãéããŸãã ãã¡ã€ã«ãç·šéããã«ã¯ããiãïŒç·šéã¢ãŒãïŒãæŒããŠæ¬¡ã®è¡ã远å ããŸãïŒShift + Insã䜿çšããŠãšãã£ã¿ãŒã«è²Œãä»ããŸãïŒã
00 08 * * * / usr / bin / php /var/www/html/adfox/daily.php> / var / www / html / adfox / out
次ã«ãescïŒç·šéã¢ãŒããçµäºïŒãæŒããŠãïŒwqããšå
¥åããä¿åããŠçµäºããŸãã ã³ã³ãœãŒã«ã«æ¬¡ã®è¡ã衚瀺ãããŸãã
crontabïŒæ°ããcrontabã®ã€ã³ã¹ããŒã«
ã¹ã±ãžã¥ãŒã«èšå®ã確èªããã«ã¯ïŒ
$ crontab -l
00 08 * * * / usr / bin / php /var/www/html/adfox/daily.php> / var / www / html / adfox / out
outãã¡ã€ã«ã§ã¯ãcronã¿ã¹ã¯ã®çµæã远跡ã§ããŸãã ããšãã°ãã¹ã¯ãªããã®å®è¡äžã«ãšã©ãŒãçºçããå Žåã
AWSã§ã®Cronã®è©³çްïŒ
docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-extend-cron.htmlãã¹ãŠæºåå®äºã§ãã åèšã§ãæšæ¥ã®æšæ¥ã®æšæ¥ã®å©çšå¯èœãªãã¹ãŠã®ãããŒã®ã€ã³ãã¬ãã·ã§ã³ãšã¯ãªãã¯ãæ¯ææŽæ°ããã¹ã¯ãªããããããŸãã ãŸããé廿°æ¥éã®CTRãããŒã®ãã€ããã¯ã¹ããã€ã§ã確èªã§ããHTMLããŒãžããããŸãã AWSã«ã¯ãå®å
šãªããŒã¿ã¢ã¯ã»ã¹ãèšå®ããããã®å€ãã®ãªãã·ã§ã³ããããŸãã ãŸãããã®ã¢ãããŒããæ¹åããªãããMySQLããŒã¿ããŒã¹ã«ããŒã¿ãæžã蟌ãããšãã§ããŸããããã¯ãããã¹ããã¡ã€ã«ãããäœæ¥ãã¯ããã«ç°¡åã§ãã ãã®ã¢ãããŒãã«ãããAdfoxã宿çã«äœ¿çšããªããæéãç¯çŽã§ããããšãé¡ã£ãŠããŸãã