Statistics et vigilantia litterarum PHP in tempore reali. ClickHouse et Grafana subvenire Pinba

In hoc articulo indicabo tibi quomodo uti pinba cum strepita et grafana loco pinba_engine et pinboard.

In a PHP project, pinba fortasse sola certa via est ad intelligendum quid agatur cum effectu. Vera, pinba plerumque solum impletur cum problemata iam observata sunt et ubi fodere non liquet.

Saepe nemo ideam habet quotiens hoc vel illud scriptum dicitur per secundo/minutum et "tactu" optimize incipiunt, ex locis illis quae magis logica videntur.

Aliae tigna enucleant ngingem, alii lentum datorum quaestionem resolvent.

Nempe pinba non esset superflua, sed plures sunt causae cur non omne consilium habeat.

Statistics et vigilantia litterarum PHP in tempore reali. ClickHouse et Grafana subvenire Pinba

Ac prima ratio est institutionis.

Ut plus minusve aliquam ex exsecutione Pinba "exhaustam" accipiamus, valde optandum est videre metrica non solum pro ultimis minutis, sed etiam per longum tempus (ab diebus ad menses).

Ad hoc:

  • install extensionem pro php (ac moduli pro nginx vis)
  • ordinare extensio pro mysql
  • install pinboard et configurare cron

Propter minimam informationem de Pinba, multi impressionem habent quod solum in PHP5 laboraverunt et iam pridem res fuerunt, sed ut postea videbimus, hoc non est.

Primus gradus est simplicissimus, omne quod debes facere, currite mandatum;

apt install php-pinba

Haec extensio praesto est in repositoriis usque ad et ad php 7.3 et nihil opus est ad componendum.

Post institutionem mandati exsequendam statim extensionem operantes, qui orationes metricas ad singulas scripturas (cursus tempus, memoriam, etc.) recipimus in forma. protobuf * via udp ad 127.0.0.1:30002.

Hactenus nemo has UDP fasciculas prehendit aut discessit, sed hoc nullo modo negate afficit celeritatem vel stabilitatem scriptorum tuorum PHP.

Usque recens, sola applicatio quae capere potuit ac processus has UDP packets erat pinba_engine. Descriptio "simplex et breve" institutionem dehortatur cupiditatem legendi semper ac denuo in eam introeundi. Indices clientium longi chiliometrorum continent nomina fasciculorum et nomina programmatum et nexus ad singulas paginas cum institutione sua, et qui proprios nexus aliis dependentiis habent. Hoc lutum agere nemo aut tempus habet.

Installation processus quod pinba2 non " maxime facilius.

Forsitan aliquando licebit pinba10 cum uno vel duobus praeceptis instituere nec fasciculum materiae legere ad intellegendum quomodo id faciendum sit, sed nunc hoc non ita est.

Si pinba_engine install facis, hoc solum est dimidium proelium. Etenim sine pinboard te ipsum limitare ad notitias ex proximis minutis paucis habebis, aut habebis aggregati, thesaurizandi, et data tibi visualize. Quod pinboard bonum est, satis simplex est ad usum installation.

Videretur, cur talis dolor, si omnes metrici a php iam ad udp portum in forma protobufu missi sunt et omne opus tuum applicationis scribendae sunt, qui eas capiet et eas in aliqua repositione collocabit? Apparet, tincidunt qui cum hac idea accesserunt statim sederunt ad proprias scribendas ideas, quarum nonnulla in GitHub finivit.

Sequens est perceptio quattuor fontium apertorum quae in repositione metrice salvantur, e quibus haec notitia facile recuperari et subjici potest, exempli gratia, grafana adhibito.

olegfedoseev/pinba-server (Nov. 2017)

udp server on go that salvet metrics to OpenTSDB. Fortasse si iam uteris OpenTSDB in incepto tuo, haec solutio tibi conveniet, secus praeteriens suadeo.

olegfedoseev/pinba-influxdb (June 2018)

udp server on go, from the same habrowserquem hic metri in InfluxDB reponit. Multae inceptae iam utentes InfluxDB ad vigilantiam sunt, ut haec solutio illis perfecta sit.

pros,

  • InfluxDB Non concedit metri receptacula aggregata, et originalis post tempus praefinitum deleat.

cons:

ClickHouse-Ninja/Proton (Jan. MMXIX)

udp server on go, which saves metrics in ClickHouse. Haec est solutio amici mei. Post questus est quod decrevi Pinbu et Clickhouse tempus suscipere.

pros,

  • Clickhouse est specimen talium officiorum, permittit ut notitias tantum comprimere ut rudes omnes notitias etiam sine aggregationibus condere possis.
  • si opus fuerit, facile metrics inde aggregare potes
  • parata factae templates Grafana
  • servat informationes in timers

cons:

  • exitiale vitium
  • nulla config in qua configurare potes nomen datorum ac tabularum, inscriptionis et portus servientis.
  • cum rudis notitia reponenda, auxilia dictionarii mensa ad paginas et inscriptiones domain reponendas adhibetur, quae quaestionibus subsequentibus implicantur.
  • alia parva quae sequuntur a primo minus

pinba-server/pinba-server (April MMXIX)

udp server in php, which saves metrics in ClickHouse. Haec mea solutio est, quae oritur ut sciatur pinba, strepita et protobuf. Dum totum hunc fasciculum digererem, scripsi "probationem conceptus", quae, inopinate mihi, opes significantes non absumit (30 MB de RAM et minus quam 1% unius e octo processuum nucleorum), sic ego cum publico communicare placuit.

Commoda eaedem sunt cum solutione praecedenti, nomina etiam usitatis ab originali pinba_engine adhibita. Adieci etiam config quod permittit ut plures instantiae pinbase servo statim mitteret ut metricas in diversis tabulis servaret - hoc autem utile est si datas colligere vis non solum ex php, sed etiam ex nginx.
Incommoda - "vitium fatale" et illae res parvae quae tibi ipsi non conveniunt, sed solutio mea "similis est sicut socco" et consistit in tantum circa 100 lineas codicis, ita quaelibet PHP elit mutare potest quod non placet. in duobus minutis.

How it works

UDP portus 30002 auscultatur, omnes fasciculi advenientes decocti sunt secundum schema protobufum et aggregatur. Semel minutum fasciculum in cliccum in tabula pinba.requestibus inseritur. (Omnes parametri configurantur aboutconfig)

Paulo de clickhouse

Clickhouse sustinet varias notitias repositionis machinas. Unus est MergeTree usitatis.

Si in aliquo puncto notitias aggregatas in omne tempus condere volueris, et notitia rudis solum ultimo, tunc potes creare conspectum materialem cum copula, et periodice purga tabulam principalem, dum omnia data manebunt in materiata sententia. Praeterea, cum pinba.requestarum tabulam creando, "machinam = Null" denotare potes, notitia rudis in disco omnino non servabitur, et simul adhuc in intuitu materiali terminabitur et aggregata salvabitur. . Hoc schemate pro nginx metricis utor, quod in nginx L temporibus plus peto quam in php habeo.

Longe igitur iter ingressus es et te medio relinquere nolim, itaque quod sequitur accuratiorem descriptionem institutionis et schematismi solutionis et omnium quae tibi necessaria sunt ac foveae quae plus quam unam navem attulerunt. ad fragorem. Processus institutionis totus descriptus est pro Ubuntu 18.04 LTS et Centos 7, processus leviter in aliis distributionibus et versionibus differre potest.

occasum

Ego omnia mandata necessaria Dockerfile mandatorum faciliorem reproducibilitatem. Cautiones tantum infra describentur.

php-pinba

Post institutionem fac ut in /etc/php/7.2/fpm/conf.d/20-pinba.ini fasciculus incomprehensibilis omnia bene habeas. De quibusdam distributionibus (exempli centos) commentari possunt.

extension=pinba.so
pinba.enabled=1
pinba.server=127.0.0.1:30002

clickhouse

Per institutionem, premehouse rogabit te ut tesseram usoris defaltam facias. Defalta, hic usor ab omnibus IPS accessibilis est, ut si firewall in servo tuo non habes, scito tesseram pro eo ponere. Hoc quoque fieri potest post institutionem in tabella /etc/clickhouse-server/users.xml.

Notatu etiam dignum est quod clickhouse pluribus portibus utitur, inter 9000. Portus hic etiam in quibusdam distributionibus php-fpm ponitur (exempli gratia centos). Si iam hoc portu uteris, eam in /etc/clickhouse-server/config.xml lima alteri mutare potes.

grafana cum clickhouse plugin

Grafana insertis, login admin ac tessera admin utere. Cum primum aperi, Grafana rogabit ut tesseram novam constituas.

Deinde, vade ad "+" -> tabulam importandam et indica numerum ashboardday pro import 10011. Hoc ashboardday paravi et imposuisti ut iterum te ipsum facere non debeas.

Grafana subsidia cum clickhouse laborat per plugin tertia factio, sed Grafana summis in plugins tertii factionis non habet ( tessera huic aliquot annis facta est).

pinba-servo

Protobufus et libevent inaugurari ad libitum est, sed pinba-ministro perficiendi meliorem. Si pinba-servo install in folder aliud quam / opt, tunc etiam emendare debes systemd scriptor fasciculus.

pinba moduli ad nginx

Ad modulum componendum, principium codicis desideras eiusdem versionis nginx quae iam in servo tuo inauguratus est, necnon optiones eiusdem compilation, secus aedificatum erit felix, sed cum moduli iungens, error mittetur qui "Modulus non est compatible binarii". Compilation optiones considerari possunt per mandatum nginx -V

vita hacks

Omnes meae sites tantum in https operantur. Schematismus campus vanitas fit, eo utimur ad separandum telam/consolationem.

In scriptis quae pervia e interreti utimur:

if (ini_get('pinba.enabled')) {
    pinba_schema_set('web');
}

Et in console scripta (exempli gratia cron scripta);

if (ini_get('pinba.enabled')) {
    pinba_schema_set('console');
}

In mea ashboardday in Grafana interretialem / consolatorium transitum pro statisticis videndis.

Potes etiam tags mittere ad Pinba, exempli gratia:

pinba_tag_set('country', $countryCode);

Id omne.

Quaeso responde repulsam infra articulum.

Ut solet, moneo me per nuntios personales in Habr et in retiacula socialia non monere vel adiuvare.

Creare tesseram in Github.

Etiam placere auxilium cum similibus Anglica versio hoc articulum in reddit.

Tantum usores descripserunt in aliquet participare possunt. InscribeTe gratissimum esse.

Quid OS es utens in calculonis?

  • Ubuntu

  • CentOS

  • debian

  • Gentoo

  • Rubrum Hat

  • Fedora

  • openSUSE

  • HELVETIA

  • Unix

  • Fenestra

  • alium

114 utentes censuerunt. 11 Utentes abstinuerunt.

Quid versionem php utens in calculonis servi?

  • 7.3

  • 7.2

  • 7.1

  • 7.0

  • 5

  • alium

105 utentes censuerunt. 17 Utentes abstinuerunt.

Have vos umquam usus est pinba?

  • yes

  • non, sed volo

  • non et non vis

  • non et non audistis ab ea

100 utentes censuerunt. 14 Utentes abstinuerunt.

Quod versionem Pinba servo velis experior?

  • pinba_engine (mysql engine)

  • pinba2 (mysql engine)

  • pinboard (php + mysql)

  • olegfedoseev/pinba-server (go + OpenTSDB)

  • olegfedoseev/pinba-influxdb (influxdb + vade)

  • pinba-server/pinba-server (ire + clickhouse)

  • pinba-server/pinba-server (php + clickhouse)

  • Scribam ipse mea

  • alium

39 utentes censuerunt. 47 Utentes abstinuerunt.

Source: www.habr.com

Add a comment