Logsysteem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Als developer bouw je in DevOps teams aan enterprise applicaties, nieuwe IOT, Chatbots of AI oplossingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren in dit vakgebied. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij vorig jaar Microsoft Partner of the year geworden.

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een gewaardeerde werkgever in regio Oosterhout zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je brengt de aanpassingssuggesties van klanten in kaart, om

Bekijk vacature »

Front-end developer (React)

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan

Bekijk vacature »

Ervaren PHP ontwikkelaar

Functie Jij als PHP ontwikkelaar komt te werken in een team van 4 andere PHP ontwikkelaars. Je zult je voornamelijk bezig houden met: – Het ontwikkelen van nieuwe features – Doorontwikkelen van de API – Nadenken over de technische infrastructuur – Datakwaliteit Samen met het team ben jij verantwoordelijk voor de verdere ontwikkeling van de software en om de positie als marktleider in Europa te behouden. Ze werken volgens SCRUM in 2 wekelijkse sprints, werken met Jira voor alle tickets en communiceren veel via Slack. Eisen • Minimaal 3 jaar ervaring als back end developer • Je hebt affiniteit met

Bekijk vacature »

Software Programmeur

Functie omschrijving Voor een informele club in omgeving Delft zijn wij op zoek naar versterking. Ben jij op zoek naar een nieuwe uitdaging als Software Programmeur lees dan snel verder! Als ontwikkelaar kom je terecht op een afdeling van 6 medewerkers. Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed verloopt. Je zult klanten ondersteunen. Verder zul je technische ontwerpen en gebruikersdocumentaties schrijven en deze onderhouden. Er wordt voornamelijk gewerkt met PHP, Java en

Bekijk vacature »

Infrastructure Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12945 Introductie Our client is one of the most innovative companies within the Netherlands. Currently we are looking for an Infrastructure Platform Engineer. Within this role you will be developing the infrastructure. Functieomschrijving Within this role you are responsible in the development of our distributed data and compute platform infrastructure. You will design, develop and implement new features and fixes. Next to this you will integrate and configurate other packages that supports the development of tuning applications within the organisation. You will support customer sites remotely. Design and implement the

Bekijk vacature »

C#.NET Developer Jr. Functie

Functie omschrijving Bouw jij graag aan applicaties om processen in distributiecentra te optimaliseren? Wij zijn op zoek naar een C#.NET ontwikkelaar in regio Breda die hier graag een steentje aan bijdraagt! Jouw werkzaamheden zullen er als volgt uitzien: Je krijgt veel vrijheid in de keuze van de technieken die je gaat gebruiken. Uiteraard wel binnen de gestelde kaders, en door gebruik te maken van het .NET platform. Je gaat aan de slag met de ontwikkeling van een nieuwe module binnen de WMS suite van dit bedrijf. Deze "carrier" module gaat er voor zorgen dat de selectie van een vervoerder volledig

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een erkende werkgever in de regio van Goes zijn wij op zoek naar een enthousiaste software programmeur met PHP/Symfony ervaring. Een gedreven persoon die het development team komt versterken met het aanpakken van complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel professionele als persoonlijke groei? Lees dan snel verder! Dit ga je doen: Beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Testen en door ontwikkelen van software; Ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Functioneel Applicatiebeheerder

Wij van CNB zijn op zoek naar een leergierige Functioneel Applicatiebeheerder CNB is de grootste dienstverlener in de markt van bloembollen en vaste planten. In deze markt verricht CNB de volgende diensten: bemiddeling, veilen en het koelen en prepareren van bloembollen. Vanuit ons hoofdkantoor in Lisse werken bijna 100 collega’s dag in dag uit aan de bemiddeling van bloembollen. In Bovenkarspel vindt het koelen en prepareren van de bloembollen plaats. Wij zijn op zoek naar een enthousiaste Functioneel Applicatiebeheerder die naast een applicatie, ook sfeer kan bouwen! Jij: Vindt het leuk om binnen een klein IT-team aan de slag te

Bekijk vacature »

C#.NET ontwikkelaar

Functieomschrijving Voor een gewaardeerde werkgever in regio Tilburg zijn wij op zoek naar een C#.NET ontwikkelaar. Je bent verantwoordelijk voor het ontwikkelen van dashboards, webapplicaties en apps voor de eigen IOT-oplossingen. Samen met een vooruitstrevend team van ontwikkelaars en engineers krijgen jullie de opdracht om de sensoren in de apparatuur te scannen en vervolgens de data om te zetten in belangrijke inzichten voor de klanten. Taken en verantwoordelijkheden: Heb jij ideeën over nieuwe technieken die jullie kunnen implementeren? Hier wordt echt naar je geluisterd en gekeken of jouw idee daadwerkelijk ingezet kan worden; Je gaat aan de slag met de

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »
Paco de Wulp

Paco de Wulp

09/06/2015 14:17:02
Quote Anchor link
Dit idee staat nog op mijn 'ToDo-List'.
Ik denk dan aan het loggen van elk record wat 'geupdate', 'gedelete' of 'geinsert' wordt.
Dit kan handig zijn om eventuele fouten in het systeem maar ook fouten door gebruikers te kunnen achterhalen.

Is het haalbaar (qua performance) en zinvol om een logsysteem voor een webapplicatie in PHP/MYSQL op te zetten ?

Toevoeging op 09/06/2015 14:25:41:

Aan ieder record wat wordt gelogd wordt dan een gebruiker_id / timestamp / actie (update, delete, insert) toegevoegd. Hierdoor zal de log-tabel snel in omvang toenemen.
 
PHP hulp

PHP hulp

02/05/2024 12:08:10
 
Ivo P

Ivo P

09/06/2015 15:00:24
Quote Anchor link
Mysql's eigen log?
 
Ward van der Put
Moderator

Ward van der Put

09/06/2015 15:22:52
Quote Anchor link
Je gaat dan van 1 naar 3 en meer records, namelijk het record zelf plus een record voor elke INSERT, UPDATE en DELETE.

Daarnaast verdubbelt het aantal queries.

Moeilijk om te zeggen wat dat voor de performance betekent, maar wat vaak wordt gedaan, is die metadata in de tabel zelf opslaan. Voeg bijvoorbeeld een created_on met een TIMESTAMP plus een created_by met een user-ID toe en je kunt daarmee zien wanneer en door wie dat record werd toegevoegd.

Voor een DELETE doe je iets vergelijkbaars: je delete een record niet echt, maar zet een flag om voor "deze is verwijderd". Alleen registreren wie wanneer de DELETE heeft uitgevoerd, is namelijk vaak ontoereikend als je vervolgens echt data kwijt bent. Dan weet je eigenlijk nog niet wat er is gebeurd: mocht die data wel weg?

Bij een UPDATE hangt het tot slot vooral af van hoe belangrijk mutaties en historische gegevens zijn. Als iemand bijvoorbeeld een adres wijzigt, zou je ervoor kunnen kiezen om gewoon een nieuw record toe te voegen, zodat je het oude adres achter de hand hebt.
 
Fabian webstars

Fabian webstars

09/06/2015 15:47:24
Quote Anchor link
kan je niet de data in 2 tabellen inserten en in een tabel daar van alle updates en deletes uitvoeren?
 
Ivo P

Ivo P

09/06/2015 16:18:56
Quote Anchor link
@fabian:

INSERT INTO users (naam) VALUES ('fabian');

UPDATE users SET naam = 'jan' WHERE naam = 'fabian';

UPDATE users SET naam = 'piet' WHERE naam = 'jan';


op die manier weet je dus hooguit nog dat user Piet ooit Fabian heette, maar dat hij ook kort Jan heette, kun je niet meer achterhalen...
 
Paco de Wulp

Paco de Wulp

09/06/2015 18:07:01
Quote Anchor link
@Ivo P: Oh, had ik nog niet aan gedacht. Weet jij wat er allemaal wordt gelogged ?
@Ward: Jouw oplossing zou kunnen, maar dan weet ik alleen of het record gewijzigd is, maar niet precies welk(e) veld(en) er is(zijn) gewijzigd.

Mijn logsysteem-idee is misschien een beetje lomp, maar als het qua performance amper iets uit maakt en de diskruimte is er gewoon! Who cares ?

N.B. Het log-bestand moet zo af-en-toe wel worden opgeschoond anders groeit het uit zijn voegen. Eens per maand opschonen en naar een backup schrijven.

Toevoeging op 09/06/2015 18:08:50:

Even nalezen: https://dev.mysql.com/doc/refman/5.1/en/server-logs.html
Gewijzigd op 09/06/2015 18:15:25 door Paco de Wulp
 
Ward van der Put
Moderator

Ward van der Put

09/06/2015 18:56:59
Quote Anchor link
Misschien nog een andere aanvliegroute. Je kunt een tabel maken met dit type indeling:

- tabelnaam
- kolomnaam
- timestamp
- oude waarde
- nieuwe waarde

Zo kun je precies terugvinden welke kolom in welke tabel wanneer werd gewijzigd. Het is relationeel niet okay, maar het geeft je wel een goed beeld van wat zich afspeelt in de database.

Ik heb dit model één keer gebruikt voor een CRM-systeem. Daarin werkt het op zich goed: je kunt zien wanneer bijvoorbeeld een telefoonnummer werd gewijzigd en wat het vorige telefoonnummer was. Zo registreert het elke wijziging — en af en toe betrapt het gebruikers daarmee ook op een leugen of een halve waarheid (want daarom was het te doen).

Ruimere en belangrijkere vraag is eigenlijk niet wát je logt, maar vooral wáárom je iets logt.
 
Paco de Wulp

Paco de Wulp

09/06/2015 20:32:55
Quote Anchor link
Ja, deze aanvliegroute is ook een mogelijke oplossing.
Ach, ik weet nog niet of ik het daadwerkelijk ga implementeren, want zoals je zegt het moet inderdaad wel een goede reden hebben om het te doen.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/06/2015 20:54:54
Quote Anchor link
Dan zou ik gewoon met een soort van versiebeheer (/workflow) gaan werken, waar je gewoon nieuwe records creëert zoals Ward ook al voorstelde (de nieuwste versie van een item is de versie waar je meer werkt). Als je alleen alle verschillen opslaat wordt het een enorme legpuzzel om na te gaan welke toestand één record op enig moment had. Dit zou je dan elke keer moeten uitrekenen. En je kunt alleen terugrekenen dan, lijkt mij ook erg onhandig.

De oplossing hangt natuurlijk ook af van wat je precies met deze logging wilt bereiken en wat je ermee wilt kunnen doen...
 
Fabian webstars

Fabian webstars

10/06/2015 03:00:15
Quote Anchor link
kan je niet elke verandering naar je zelf toe mailen ofzo dan kan je het in je database schoon houden en een speciaal email adres maken voor alleen de "updates" die mensen uitvoeren. als er heel veel veranderd wordt is het alleen niet ideaal :P
 
Ozzie PHP

Ozzie PHP

10/06/2015 03:18:54
Quote Anchor link
>> Dit kan handig zijn om eventuele fouten in het systeem maar ook fouten door gebruikers te kunnen achterhalen.

Aan wat voor fouten door gebruikers denk jij dan? Kan een gebruiker rechtstreeks in jouw database? Dat lijkt me niet, dus op welke manier verwacht je dan dat hij/zij fouten kan maken?

Ik zou dan eerder denken aan het loggen van handelingen. Bijv. Pietje heeft 9 juni 2015 om 21.30 artikel X uit de database verwijderd. Als dan vervolgens de directeur van het bedrijf bij jou aan de telefoon hangt omdat ie z'n artikel mist, kun jij zeggen dat Pietje dat verwijderd heeft. Op die manier kun je met een bepaald doel loggen. Je logt dan bijv. handelingen van de afgelopen 2 weken en alles wat ouder is, wis je weer. Op die manier loopt je database ook niet vol. Ik zou dan vooral 'kritische' handelingen loggen, bijv. het verwijderen of aanpassen van een record. Maar bijv. het aan- of uitzetten van een bepaalde onbelangrijke setting zou ik dan weer niet loggen.
Gewijzigd op 10/06/2015 03:20:10 door Ozzie PHP
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.