Статистика посещений

После интегрирования в WordPress скрипта Режим Работы, настала очередь Статистики посещений. Этот скрипт немного сложнее. Обрабатывает лог-фал Apache. Результат хранит в собственной базе. Более сложный вариант постороннего по отношению к WordPress самописного скрипта. Не является плагином WordPress и WordPress о нем ничего не знает. Что очень хорошо - таких сторонних скриптов можно написать целую кучу и их наличие ничуть не будет тормозить работу WordPress. Для упрощения работы с базой, надо базе WordPress и базам сторонних скриптов назначить одного и того же пользователя. Тогда соединение с базой не надо устанавливать повторно. Сами базы могут быть разными. Но после завершения работы со своей базой надо не забыть переключиться обратно на базу WordPress.

Строка с запрашиваемым ресурсом может иметь очень большую длину и портить собой все форматирование. Чтобы такую строку сократить, надо разрешить браузеру её переносить. Этого можно достичь, вставив в строку в местах предполагаемого переноса теги . Сами теги можно вставить с помощью функции chunk_split, правда она не работает с UTF. Поискав в Интернете, можно найти ей замену.

Небольшие трудности возникли с отображением таблиц - я хотел с границами, а границы не отображались. Оказалось - это такой шаблон. Помогла небольшая правка файла style.css прямо из WordPress.

Ниже пошел сам скрипт. Как всегда, хорошо помогают плагины Exec Php и Raw HTML.

[raw]

Анализ лог-файла сервера
Обнаружен временный файл - возможно копия скрипта уже работает.
Возраст файла более 10 сек - файл не был удален по ошибке. Удаляю файл.
Неправильная запись в логе - 5.167.144.34 - - [03/Feb/2023:16:46:23 +0300] "GET /%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0/%D0%9D%D0%B0%D0%B2%D0%B8%D0%B3%D0%B0%D1%86%D0%B8%D1%8F/%D0%93%D0%B8%D1%80%D0%BE%D1%81%D0%BA%D0%BE%D0%BF%20%D1%8D%D1%82%D0%BE%20%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%20%D0%BA%D1%80%D0%B0%D1%82%D0%BA%D0%BE%D0%B5%20%D0%B8%D0%B7%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5.pdf HTTP/1.1" 200 446607 "https://www.yandex.ru/clck/jsredir?bu=9zjv&from=www.yandex.ru%3Byandsearch%3Bweb%3B%3B&text=&etext=2202.kS3nrEEnCR3V6UzaQCxf4qy5gp9aoVdXltixC1cPBpIWR65B_YkUMG9xTiMLLXdxYdPrreqsudmU6Qf0AXWeymNlZmh3ZGdvdWF6ZHRxemw.5ee690956a95911e1bc89a39031ecd68f8864ac5&uuid=&state=PEtFfuTeVD5kpHnK9lio9aYG-Iq6Kg5PYtFXbNaEeNypzDUTqbHLKA,,&&cst=AiuY0DBWFJ5Hyx_fyvalFC_FJBV51nXWZousVtykvs-b3j72wfa52HkwD0DKCBdcjk1SCa-fWZZCWlbvuC4HuPAhH3mOdFturqXaXZOO_odSwskENtkAi5EcxTFTtymMUO900nM8ptIiCuHcxb_pJXTQk361vvDBog5gBuc7VHFu7Y1nWE9xciU6wu_19cxzi57b5Mh5PPWDTdD9JCQu8n9JxcrlOI7vtFu5x6EddrUnJn-iPWYbGM2MWmhK87fBE9O55oXGvVHE8Gl-JnbmcrjPEKqK3qGzSk6ZSEdRFaWCcK1Y1DMkMIfsLk8U30aTw-eDjVq2lkf1b1UHnjQo-gJNXXdOLGdQrAZYUX61H_aIPVmBUmQtaIox3wWRTYqDhD2j0cQFWYBfgsaf4YcE_uSb-HuWm1XOr03rbtRriPy57e7aA54ApcUwCpOpVMUVecYbEvt5SPNiQXqQywm2WFo1jp-t3L4xrncTwKLLDIU_G65XlrmyNsL_skN0XWn3Q-VZXzkHK6nGUB96Qmx6XcW_8szIQUD847MXTkwIU_t9_ukUOIxGTD4w9m3F2bulxFJNy5xxUsUMRO-L4qB0OAt9LraPk8pl&data=UlNrNmk5WktYejR0eWJFYk1LdmtxcjYzcnZpbWRRR2FLby1ZMlZDN3dqTGJSTGxKdkJaQVFFUW80a193aU5fQ0VkMXRFS1B1T1g0ZEJVbUFyZ0pRZFBXLWsyajFQSGkzTElpbUtjV2F1MnhrV3pNaDRneGs1NXcwaTZjZkpnTXVEOVl4X1ctYkRMbjBXUEM4ZFpRdjhNUzNtcHZ5a3d3NnZxNFpYbmZDSUtTdDBWRmRUS0ExTFdRQzllZFN2MHp0Tkk1bkJUT3BzODRFMW9RaVkzeEluVGU3YThkQW5lR3cwMG1ILWowa2JFT05JOHhlaHpYVGJVMk5BOEdhbGYtek9uS3p5bzMzWU8wb2xlVnpuZ1lWbFVSZFJsc2R4SnhBMWdKUlJPMzZHOVF4NUphaVg3ckJ3emFHY0Rjak5MUldITWpaZDVERU9acWtTQnZCN2dzcXQ2Z2lFUnBKOTlFcDZsd2lWaHZuTEFnckh3bEM4OFFPX05nRDluRVRyQ3A1NEVyeXY5dXhkNHBLdnJnRl9QWDRoV1pVa0xSUno4ZnBWREl4WG9iSUJwRGQyM29rTTltdktmRHVmcGV1QnhLTHAxd2NKVGZVOE5HcEFELTNyMVJrNS1VMEJaSldsSmhaT0dJLTNNcFRkNUtKZEltcGVfRmlySVdpTmJNdzVnanp1SWZGb2FvekhpSmdEOXhNblVOTWdZUHkwcFl
Неправильная запись в логе - aZ0R4NzZPclEwTWhONUhBRW1UbUw0VWt2SFlBcFZwTTFRWGI2S1VzWVpwOXF3NG5oVlBWNlFzdW9xWnhBYTM0T0dtVW5QcFhUUlFld25sYUFvR09NRDI2RkpIeU9wOHBFamcyZVg5VEtjNVdPWUFhZ01wdnFaUDlSc1o5VFE3RklqcjNZc1l2Xzgwakk2NkxkZXN4NWh4d0x1WmpaRDU4OVBpOGdKLWdMTk80Z1BBZkVtMkZyRzVjSUwyUFZxZmJtbk9USHJMNEZoUmRSNTJldURVMFdoZFJJSGQ2T1dRRHlGLTFNaDg3Z0Z2V0JrUFExTGE3QkU2THFCV3lzUnJpWVVsRE4,&sign=db3e49694a5b1195e5ab85b70181ac9d&keyno=0&b64e=2&ref=orjY4mGPRjlSKyJlbRuxUiMagqD7IEChNIhECNn1bzo,&l10n=ru&cts=1675431248733&hdtime=9175.995" "Mozilla/5.0 (Windows NT 6.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36 OPR/36.0.2130.80"
Неправильная запись в логе - 213.109.48.60 - - [03/Feb/2023:23:53:48 +0300] "GET /%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0/%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5%20%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5/%D0%98%D0%B4%D0%B5%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F%20%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8/%D0%A1%D0%BE%D1%84%D1%82%20-%20%D0%BE%D1%82%D1%81%D1%82%D0%BE%D0%B9!%20%D0%98%20%D1%87%D1%82%D0%BE%20%D1%81%20%D1%8D%D1%82%D0%B8%D0%BC%20%D0%B4%D0%B5%D0%BB%D0%B0%D1%82%D1%8C.pdf HTTP/1.1" 200 4105599 "https://www.yandex.ru/clck/jsredir?from=www.yandex.ru%3Bsearch%2F%3Bweb%3B%3B&text=&etext=2202.6jMXVAMW0djFea2EIWWKDSoMzkVw3ppFmhV3GnXD_BwclzohGZedVJZeUGmqFtDI4SXzSOjYn7vF8aChz8TrcUMfTJYGzOm2YHHGZBHJFnDiPAVhWN2-dASbGbL578qxc29oaW9saGdld3lydXRkbw.70eec6c40df2823e7fdea0875f3394e41de85413&uuid=&state=jLT9ScZ_wbo,&&cst=AiuY0DBWFJ5Hyx_fyvalFHl0mAb6gJI2sdf6iVpTougHtNruy9--P5Lxq_VvERMJ32RlVroPOSB1GNMQbcMi8BhUPgMvV5_xt8PZ71T7BrXWVcvAWMYaZE976_SGTwkU5Zo4CexSsR65b_2syF2UzrWgLizZMBw36JFAjqHfEXTLSE7UIKt4fBX4XPHSag_rXJdYWOUQAEzhVTUtadmiur352P9Cnf57QuKG4d48c-1u5Wg0fbvRHyPHQjmDmNJn3GAESf1bpEZzyz1l-j0BQxW2mxN6e793eCR1EbWLVxBMdfkzroKs7qfwN-AhkENWmj3MEcdqVNG1pJLlvZHU994X9ANpG8j6ndpBEpGPHHGNaCohNz-B9LyTGh5KkZrWBxQRZwzc2ybVGP_aMlVn3jlaMvssR-gbvv5kZrC5RykP-Z8gqkkHF63Bh21NFZPDZHnC6s4Rh0A88RxO0yM7TzVZlqc5T6frrsD4kzLKa66I3AM-9xXYiSzMw1rLtUafvaYQFN-tSGBCrYE8YT2-j9rsYZH8NflIDXY14-Zye3ULmKI8WnSeo-jFej8nhRJAvGV7yxCe7eMKe6ls1bxu-lhZ4nxtn1UMMxgNJFDQF0b52qpwXfAw3kwQQANXN_BGkD-AQtiwKiGkphbBQ6UdjF-4Jpkd3U_SddCgXW_ADPb91FuqNgJ7KZrtuN46XxgODig_kkW3giTTpbtdqTmwH97PDD-aSAeYtFFiTyOXF_kVVE1hnSLZ8hOHfs6q4afONKQb4mofvnfBIjDl7QcBFVI3wcB2wXVaSjGqBxKHZRj3JKCQWusDhegKXgj2oSUyHzzW2lwZbt63oIyJOgS8XxspUk5LoY2nBhXtgGPb_hoZWKnY6xy00KhxfbtZMKLwwCgqQRexcSMtnKaO5O8SF4zXwnOXiLcmtD76OEve525jklOiOgwW8zBfcgnDq_L0REh91Dm3sBITr8NL7fx6FXeUegYK95grZTBvwgf_2Q1ZyCjzrGUnNXw3vlEuOPefOptgyDjEuO2Ri9Alory8dOuxv-b-no3Xn0xZiVkDJ4v3oZ
Неправильная запись в логе - NHi_HjsiIlU0vpZSkPLMTxvx7MWivxkSWrzPII9sW4GUXmhFZA&data=UlNrNmk5WktYejR0eWJFYk1LdmtxcjYzcnZpbWRRR2FLby1ZMlZDN3dqTGJSTGxKdkJaQVFFUW80a193aU5fQ0VkMXRFS1B1T1g0ZEJVbUFyZ0pRZFBXLWsyajFQSGkzTElpbUtjV2F1MnhrV3pNaDRneGs1NXcwaTZjZkpnTXVEOVl4X1ctYkRMbjBXUEM4ZFpRdjhNUzNtcHZ5a3d3NmswbXVFWVVEUV9CVGJpWVJqVDhsWG9KS2ZLRzl2YVBfRHZBMDQ0TVV1dlhQTHF1MEE4cWJoay0taWp6S0EyNk1YU1lBVkoxT2pEanBpU0U3NkZ2azE3bFZyUnB2SmJwem53RGtmalQ4ZnBxUDE2STR1WHpKS3hTeG1HczdvQjBDYkRjNDUxbnhrRHRjM0stNXVSR282Zzk5cnFrRktuNkl6cThxZl80OUdkT2d4Rm9reTRZWm1Ia0pFNEZUSy1uUllCTnBKUFlNa0Z0MTZsTHNXOUFDTUFIenVNYUhFdFl5cWlvQ2NoOEt3aTdTOHMxcVJsZjI0VjdNa3BnWjVueEZqU0NyeU1DSENDMEx6QUFFN0hnLVpncTRPRGNQc19sdzlwalBEbll5RDA3YkR1UkhXd2RhdHNpLW1OVFVJLWw1TU5HM2NybXBtbDN2Zkc5NnRJc1JKRXZINTJKc19tZFlQMkVSczlrYlpkZW5MWm5fZXpkTE1qeGRvUmZmUkhWQWRsS0UzWGNrakhBcldQVUpZTlFXdWs4eEJLOENUaHR6eVBwbDh6VXZTQzM4WjB6TnEwc2psX0dITWhvV2U0cWtoMUlvWTJfZW9Qd2oxSFF4ZTYxVGktZFhHamw3THpBSzRKYzVPMGlfSXpoU2c4aFhkNlRBUllHbzNjLWRkazZJT0thMTRDcmo4WWs2Xzg0WTBsYU8yT1hlaFEzTHlwa1Rwc21tQjBzVndZdUQzaHZjUkFpS1JVR29iaXRLUFBVMVNJVERDdm5xdjB2OTEtQjlZbW1ZUGtFbjRHOFBxbkdraWFPWFNuVFkxSEx5c0VhaDZObjFCbVQ2Y1ZoU3pqNmtFMWpBMERIVVpXeF93OVh4WG5WM09UQXU0RWEwUU4wM3lKWGVRUldjRHl3d1k4c3czS09IWnhBVDJxdU40eS1KM3VmVFdLaXVLTW9CUlZwSmdXTmhEM05raUZDXzJxZVlHWDF2N2hzcVpfZGVQclFpVzJLRUVMc1l4cFV4NDZwZnBHWnlmaElFUm1GcldyRnN1M1N1Ynh3Z2stQThHeFRvZ1RGLUFTVzlTamxJUHJIOHM0X1d5aF91aWs3Z3J4c3NDWDQ1WGhTUkt6Y0pQdllabm53Uk95WHllaWcyUjdaU3RiVUpKUnluSzVSTTV3OUtPUVlzdHdjaWtEZExPd2dSQUNzMFVyU3JxcE9QZU83Qi1NWmFwME5ZV0xBN1FZQWRocW1mREZSblpSWFhIRVZhUFFsQ0FXTUU4eWMtUmxvMmRXMzloaUZhdnVYM1gtR2RGMDNKMDBEMG41VGRxMEpxZTZQaTJBWlpLQ1ZYWVo4ZlFiRlJnWWhFeWZZQ1BiYjhOODZVaTlRWFVTTHpwSTBtWlprZ25zQkRLaW5CMHdvb1gxR1F4SjhJQnp4dHhnaldVcFYxUFN2RHVGN1I5czBiY0JIdlVNckdBTEpHVmhZNEVQQ0wzMmU4TEhmc0J3UDByUHEybkhSaWhYbGF2VlBPc1ZORWVYTDBXMld3UTZTYnlocnl4UmtjOVFTR0NtcVZ6YjR6TkVzdk5nMS1ERi0tTmdjWmpzOHptc0lzeXo3YWNNVTd1UXBnZjl0NU81Y3A3dFdCd3FHVVFpRU1IdGtQZHNnbFpwVXpBQ1JYR09UTw,,&sign=8cc7f509a706a98a2c128962c481c3ee&keyno=0&b64e=2&ref=orjY4mGPRjlSKyJlbRuxUg7kv3-HD3rXGumT6obkg8lpe5hGeob95
Неправильная запись в логе - LK3yMPbNTPOq-xRB7ZgXBDAmMBWgP3RiRlR0whC8Z1K9a8Kx86weHw3KXqWtr6eXYimWBqqpMtcpXAqLG001bHPfXxYblw0pvG0M_S0YoL7eXa9OlxQWw0K7kHi-b8or_seVnTTC5vpwqA-Rpi_Xwp-GaW5-NGkTcxX5GWbZe0n6XhdLg1_azobGQckjmepcXdveD4hNYPRB4hxgNjNXKpt039YB8aJmi7cYLntHAlReuhHXjQ_qtXmZFjzyyj1ktlPAGbhgMu3VotXktYYIxFVMWCZa0GWyTuQzB8JMxWOivaXEBK6kH7mX7S2KD_vaQ,,&l10n=ru&cts=1675456887832%40%40events%3D%5B%7B%22event%22%3A%22click%22%2C%22id%22%3A%221_be89w01-01%22%2C%22cts%22%3A1675456887832%2C%22fast%22%3A%7B%22organic%22%3A1%7D%2C%22service%22%3A%22web%22%2C%22event-id%22%3A%22ldozrsigd0%22%7D%5D&mc=2.584962500721156&hdtime=2360.5" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
Разбор лога проведен. Ошибка записи в базу данных 13: Can't get stat of '/var/tmp/stat.txt' (Errcode: 2 - No such file or directory)